:root{
  --pv-blue:#65bdef;
  --pv-navy:#18303d;
  --pv-orange:#ec9337;
  --pv-blue2:#4995cd;
  --pv-green:#4a9d5f;
  --pv-white:#ffffff;
  --pv-ink:#18303d;
  --pv-muted:#4d6270;
}
*{box-sizing:border-box;margin:0;padding:0;}
html,body{width:100%;overflow-x:hidden;}
body{font-family:'Source Sans 3',Arial,Helvetica,sans-serif;color:var(--pv-ink);line-height:1.6;background:#fff;}
img,svg{max-width:100%;display:block;}
a{color:inherit;}
h1,h2,h3,h4{line-height:1.2;}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
.btn{display:inline-block;font-weight:700;text-decoration:none;border-radius:8px;padding:12px 24px;font-size:.95rem;transition:transform .15s ease;}
.btn:hover{transform:translateY(-1px);}
.btn-primary{background:var(--pv-navy);color:#fff;}
.btn-outline{border:1.5px solid #d7e3e9;padding:11px 22px;border-radius:8px;font-weight:700;font-size:.9rem;}
.logo-img{height:36px;width:auto;}

/* nav */
nav.pv-nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0;}
nav.pv-nav ul{list-style:none;display:flex;gap:28px;font-weight:600;font-size:.95rem;}
nav.pv-nav ul a:hover{opacity:.75;}
nav.pv-nav .nav-right{display:flex;align-items:center;gap:20px;}

/* hero */
.hero{padding:70px 0 50px;text-align:center;}
.hero h1{font-size:clamp(2.4rem,5vw,3.6rem);font-weight:800;letter-spacing:-.02em;max-width:18ch;margin:0 auto 20px;}
.hero .lede{max-width:56ch;margin:0 auto 34px;font-size:1.15rem;color:var(--pv-muted);}
.hero-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}

.shot-card{max-width:900px;margin:44px auto 0;border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(24,48,61,.35);border:1px solid #eef2f3;}
.shot-card img{width:100%;display:block;}

/* page header (About/Pricing/Contact) */
.page-header{padding:56px 0 20px;}
.page-header h1{font-size:clamp(2rem,4vw,2.8rem);font-weight:800;letter-spacing:-.02em;}

/* content blocks */
.block{padding:60px 0;}
.block.blue{background:var(--pv-blue);color:#06222f;}
.block.navy{background:var(--pv-navy);color:#fff;}
.block h2{font-size:1.6rem;margin-bottom:8px;}
.block > .wrap > p.lead{color:var(--pv-muted);margin-bottom:6px;}
.block.blue p.lead,.block.navy p.lead{color:inherit;opacity:.85;}

.prose{max-width:70ch;}
.prose p{margin-bottom:18px;}
.prose h2{margin:36px 0 14px;font-size:1.4rem;}
.prose h2:first-child{margin-top:0;}

.two-col{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:start;padding:20px 0 60px;}
.two-col img{border-radius:12px;box-shadow:0 20px 50px -30px rgba(24,48,61,.4);}
.two-col figcaption{font-size:.85rem;color:var(--pv-muted);margin-top:10px;}

/* feature grid */
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:8px;}
.feature{background:#f5f9fb;border-radius:14px;padding:24px;}
.block.blue .feature{background:rgba(255,255,255,.35);}
.feature .icon{width:36px;height:36px;margin-bottom:14px;}
.feature p{font-size:.9rem;}

/* pricing */
.price-strip{display:grid;grid-template-columns:1fr 1fr;gap:20px;background:#fff;border-radius:16px;padding:8px;margin-top:34px;}
.price-card{padding:26px;border-radius:12px;background:#f5f9fb;}
.price-card.hi{background:var(--pv-orange);color:#2a1a04;}
.price-card b{font-size:1.5rem;display:block;margin-bottom:4px;}
.price-card span{font-size:.85rem;opacity:.8;}
ul.bullets{list-style:none;margin-top:16px;}
ul.bullets li{position:relative;padding-left:22px;margin-bottom:10px;}
ul.bullets li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;border-radius:2px;background:var(--pv-blue2);}
.block.blue ul.bullets li::before{background:#06222f;}

/* team cards (About) */
.team-row{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:28px 0 10px;}
.team-card{background:#f5f9fb;border-radius:16px;padding:26px;}
.team-card .avatar-photo{width:72px;height:72px;border-radius:50%;object-fit:cover;margin-bottom:16px;}
.team-card h3{font-size:1.05rem;margin-bottom:8px;}
.team-card p{font-size:.9rem;color:var(--pv-muted);}
.quote-block{background:#f5f9fb;border-radius:20px;padding:36px;margin:30px 0;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;}
.quote-mark{font-size:3.4rem;color:var(--pv-orange);font-family:Georgia,serif;line-height:.6;}
.quote-block p{font-style:italic;margin-bottom:10px;}
.quote-block .who{font-weight:700;font-style:normal;color:var(--pv-muted);font-size:.9rem;}

/* contact */
.contact-email{display:inline-block;font-size:1.4rem;font-weight:700;color:var(--pv-blue2);text-decoration:none;margin:18px 0 8px;}
.contact-email:hover{text-decoration:underline;}

/* footer */
footer.site-footer{padding:30px 0;font-size:.85rem;color:#7d8080;display:flex;justify-content:space-between;border-top:1px solid #eef2f3;flex-wrap:wrap;gap:10px;}

@media (max-width:820px){
  .grid4{grid-template-columns:repeat(2,1fr);}
  .price-strip{grid-template-columns:1fr;}
  .two-col{grid-template-columns:1fr;}
  .team-row{grid-template-columns:1fr;}
  .quote-block{grid-template-columns:1fr;}
}
