:root{--green:#07A046; --green-deep:#06753A; --green-bright:#2ECC66; --black:#0B0B0B; --paper:#f3f1ea; --muted:#6b6b63;}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:'Inter',Arial,sans-serif; background:var(--paper); color:var(--black);}
.wrap{max-width:1140px; margin:0 auto; padding:0 32px;}
h1,h2,h3{font-family:'Anton',Georgia,serif; font-weight:400; text-transform:uppercase; letter-spacing:0.01em;}
.g{color:var(--green);}
.note{background:#fffbe0; border:1px dashed #d4c98a; color:#7a6d1f; font-size:11px; padding:4px 10px; border-radius:4px; display:inline-block; margin-bottom:6px;}

/* HEADER — fixed single-line crowding */
header{background:#fff; border-top:6px solid var(--green); box-shadow:0 12px 28px -16px rgba(11,11,11,0.22); position:sticky; top:0; z-index:50;}
.nav{display:flex; align-items:center; justify-content:space-between; padding:12px 28px; gap:16px;}
.nav-logo{height:38px; flex-shrink:0;}
.links{display:flex; font-size:12.5px; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; white-space:nowrap;}
.links a{color:var(--black); text-decoration:none; margin-right:20px;}
.links a:last-child{margin-right:0;}
.links a:hover{color:var(--green);}
.cta-btn{display:inline-block; background:var(--green); color:#fff; padding:10px 18px; font-size:12px; font-weight:700; text-transform:uppercase; border-radius:2px; border:none; cursor:pointer; flex-shrink:0; white-space:nowrap; text-decoration:none;}

/* SLIDER — real, functional */
.slider{position:relative; height:620px; overflow:hidden;}
.slider-ghost-mark{position:absolute; right:60px; top:50%; transform:translateY(-50%); width:320px; height:auto; opacity:0.22; z-index:3; pointer-events:none;}
.slide{position:absolute; top:0; right:0; bottom:0; left:0; opacity:0; transition:opacity 0.7s ease; display:flex; align-items:center;}
.slide.active{opacity:1; z-index:2;}
.slide img{position:absolute; top:0; right:0; bottom:0; left:0; width:100%; height:100%; object-fit:cover; object-position:center center;}
.slide[data-index="1"] img{object-position:center 15%;}
.slide[data-index="2"] img{object-position:center 40%;}
.slide::after{content:""; position:absolute; top:0; right:0; bottom:0; left:0; background:linear-gradient(90deg, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.35) 55%, rgba(0,0,0,0.1) 100%);}
.slide-content{position:relative; z-index:2; color:#fff; max-width:560px; padding:0 50px;}
.slide-eyebrow{color:var(--green-bright); font-weight:800; font-size:11px; letter-spacing:0.1em; text-transform:uppercase; margin-bottom:10px; display:flex; align-items:center; gap:8px;}
.slide-eyebrow .rule{width:20px; height:2px; background:var(--green-bright);}
.slide h1{font-size:34px; line-height:1.08; margin-bottom:12px;}
.slide h1.quote{font-family:'Source Serif 4',serif; font-style:italic; font-size:24px; text-transform:none; font-weight:600;}
.slide p{font-size:13px; color:#d4d4cf; line-height:1.5; margin-bottom:16px; max-width:440px;}
.slide-ctas{display:flex; gap:10px;}
.btn-primary{background:var(--green); color:#fff; padding:11px 20px; font-size:12px; font-weight:700; text-transform:uppercase; border-radius:2px; border:none; cursor:pointer; text-decoration:none;}
.btn-outline{border:1.5px solid #fff; color:#fff; padding:11px 20px; font-size:12px; font-weight:700; text-transform:uppercase; border-radius:2px; text-decoration:none; background:none; cursor:pointer;}
.slider-dots{position:absolute; bottom:20px; left:50px; z-index:5; display:flex; gap:7px;}
.dot{width:22px; height:3px; background:rgba(255,255,255,0.35); border:none; cursor:pointer; padding:0;}
.dot.active{background:var(--green-bright);}

section{padding:56px 0;}
.section-head{max-width:620px; margin-bottom:28px;}
.eyebrow-sm{color:var(--green-deep); font-weight:800; font-size:12px; letter-spacing:0.08em; text-transform:uppercase; margin-bottom:8px; display:flex; align-items:center; gap:8px;}
.eyebrow-sm .rule{width:20px; height:2px; background:var(--green-deep);}
.section-head h2{font-size:30px; line-height:1.1; margin-bottom:8px;}
.section-head p{color:var(--muted); font-size:14px; line-height:1.5;}

/* PACKAGES — real gap now */
.packages{display:flex; gap:22px;}
.package{flex:1; background:#fff; border-radius:10px; padding:24px 20px; box-shadow:0 8px 24px -14px rgba(11,11,11,0.15); text-align:center; position:relative;}
.pkg-icon{width:54px; height:54px; border-radius:50%; border:2px solid var(--green); display:flex; align-items:center; justify-content:center; margin:0 auto 14px;}
.package h3{font-size:14.5px; margin-bottom:6px; text-transform:none; font-family:'Inter',sans-serif; font-weight:800;}
.package p{font-size:12px; color:var(--muted); line-height:1.5;}
.pkg-num{position:absolute; top:12px; left:12px; width:20px; height:20px; border-radius:50%; background:var(--green); color:#fff; font-size:10px; font-weight:800; display:flex; align-items:center; justify-content:center;}

.ai-shift{background:#fff;}
.ai-shift-grid{display:flex; gap:52px; align-items:center; padding:6px 4px;}
.ai-shift-grid > div:first-child{flex:1.3;}
.ai-shift-lead{font-family:'Source Serif 4',serif; font-style:italic; font-size:17px; margin-bottom:10px;}
.ai-shift-body{font-size:13px; color:var(--muted); line-height:1.6;}
.ai-stat-box{flex:1; background:var(--black); border-radius:10px; padding:34px 26px; text-align:center;}
.ai-stat-box .num{font-family:'Anton',sans-serif; font-size:42px; color:var(--green-bright);}
.ai-stat-box .lab{color:#c9c9c2; font-size:11.5px; text-transform:uppercase; letter-spacing:0.04em; margin-top:6px;}

/* GWEN — tightened, logo now visible against light panel */
.gwen-teaser{background:var(--black); border-radius:10px; display:flex; align-items:stretch; overflow:hidden; max-height:180px;}
.gwen-logo-half{flex:0.85; display:flex; align-items:center; justify-content:center; padding:20px; background:linear-gradient(135deg,#f3f1ea,#e4e1d4);}
.gwen-logo-half img{width:100%; max-width:220px; height:auto; display:block;}
.gwen-text-half{flex:1.15; display:flex; flex-direction:column; justify-content:center; padding:20px 26px; color:#fff;}
.gwen-text-half p{font-size:12.5px; color:#c9c9c2; line-height:1.5; margin-bottom:8px;}
.gwen-text-half a{color:var(--green-bright); font-weight:700; font-size:11.5px; text-transform:uppercase; text-decoration:none;}

.bg-white{background:#fff;}
.reviews-top{display:flex; flex-wrap:wrap; align-items:flex-start; justify-content:space-between; gap:20px; margin-bottom:22px;}
.badge-slot{background:var(--paper); border:1.5px dashed #c9c5b4; border-radius:8px; padding:6px; text-align:center; flex-shrink:0; width:100%; max-width:300px; min-width:220px;}
.badge-slot iframe{width:100%; min-height:180px; border:none; display:block;}
.review-cards{display:flex; gap:18px;}
.review-card{flex:1; background:var(--paper); border-radius:8px; padding:20px;}
.review-card .stars{color:#f5a623; font-size:13px; margin-bottom:8px;}
.review-card p{font-size:12.5px; color:var(--black); line-height:1.5; margin-bottom:10px; font-style:italic;}
.review-card cite{font-size:11.5px; font-weight:700; color:var(--muted); font-style:normal;}
.reviews-link{margin-top:20px; text-align:center;}
.reviews-link a{color:var(--green-deep); font-weight:700; font-size:12.5px; text-transform:uppercase; text-decoration:none;}

/* FOUNDER — more gap, real photo */
.founder{display:flex; gap:56px; align-items:flex-start; padding:8px 4px;}
.founder-photo{width:190px; flex-shrink:0; height:200px; border-radius:8px; overflow:hidden; background:#e8e5da;}
.founder-photo img{width:100%; height:100%; object-fit:cover; object-position:top center; display:block;}
.founder blockquote{font-family:'Source Serif 4',serif; font-style:italic; font-size:18px; line-height:1.4; margin-bottom:10px;}
.founder cite{display:block; color:var(--green-deep); font-weight:700; font-size:12px; text-transform:uppercase; margin-bottom:14px; font-style:normal;}
.founder .bio{font-size:13.5px; color:var(--muted); line-height:1.6;}

.portfolio-grid{display:flex; gap:16px;}
.portfolio-card{flex:1; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 6px 16px -10px rgba(0,0,0,0.15);}
.portfolio-thumb{height:95px; background:linear-gradient(135deg,#2a2a2a,#0B0B0B); overflow:hidden; position:relative;}
.portfolio-thumb img{position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; object-position:top center; display:block;}
.portfolio-thumb.portfolio-missing{display:flex; align-items:center; justify-content:center; color:#888; font-size:10px; text-align:center; padding:8px;}
.portfolio-card p{padding:11px 13px; font-size:12px; font-weight:700;}

.posts-minimal{padding:32px 0;}
.widget-slot{background:var(--paper); border:1.5px dashed #c9c5b4; border-radius:10px; padding:18px; text-align:center; color:var(--muted); font-size:11.5px;}

.final-cta{background:var(--black); color:#fff; text-align:center; padding:52px 0;}
.final-cta h2{color:#fff; font-size:27px; margin-bottom:10px;}
.final-cta .g{color:var(--green-bright);}
.final-cta p{color:#c9c9c2; margin-bottom:18px; font-size:13.5px;}

footer{background:#161616; color:#fff; padding:44px 0 0;}
.foot-grid{display:flex; gap:32px; padding-bottom:28px; border-bottom:1px solid #262626;}
.foot-col{flex:1;}
.foot-logo-wrap{position:relative; display:inline-block;}
.foot-logo-wrap::before{content:""; position:absolute; left:50%; top:50%; width:160px; height:160px; transform:translate(-50%,-50%); background:radial-gradient(circle, rgba(46,204,102,0.5) 0%, rgba(46,204,102,0.22) 38%, rgba(46,204,102,0) 70%); filter:blur(3px); z-index:0;}
.foot-logo-img{position:relative; z-index:1; height:82px; width:auto; display:block; filter:drop-shadow(0 0 14px rgba(46,204,102,0.4));}
.foot-col p{font-size:12.5px; color:#a8a8a0; line-height:1.5; margin-top:14px;}
.foot-col h5{color:var(--green-bright); font-size:11px; letter-spacing:0.06em; text-transform:uppercase; margin-bottom:12px;}
.foot-links{display:flex; flex-direction:column; gap:8px;}
.foot-links a, .foot-contact a{color:#c9c9c2; font-size:11.5px; text-decoration:none; line-height:1.4; letter-spacing:-0.01em;}
.social-row{display:flex; gap:10px; margin-top:14px;}
.social-row .ic{width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,0.08); display:flex; align-items:center; justify-content:center; font-size:11px;}
.foot-bottom{display:flex; justify-content:space-between; padding:16px 0; font-size:11.5px; color:#8a8a83;}
.foot-credit{text-align:center; padding-bottom:16px; font-size:11px; color:#6b6b63;}

/* ===== SHARED PAGE-HERO PATTERN (interior pages) ===== */
.page-hero{background:#161616; padding:64px 0 52px; position:relative; overflow:hidden;}
.page-hero::after{content:""; position:absolute; right:-100px; top:-120px; width:420px; height:420px; background:radial-gradient(circle, rgba(7,160,70,0.22) 0%, rgba(7,160,70,0) 70%); pointer-events:none;}
.page-hero-inner{max-width:760px; margin:0; position:relative; z-index:2;}
.page-hero .eyebrow-sm{color:var(--green-bright);}
.page-hero .eyebrow-sm .rule{background:var(--green-bright);}
.page-hero h1{color:#fff; font-size:34px; line-height:1.08; margin-bottom:12px;}
.page-hero h1 .g{color:var(--green-bright);}
.page-hero-lede{color:#c9c9c2; font-size:14px; line-height:1.5; max-width:600px;}

/* ===== SERVICE DETAIL BLOCKS (Services page) ===== */
.service-block{padding:24px 0; border-bottom:1px solid #e8e5da;}
.service-block:last-child{border-bottom:none;}
.service-block-top{display:flex; align-items:center; gap:14px; margin-bottom:14px;}
.service-block .pkg-icon{margin:0;}
.service-block h2{font-size:24px;}
.service-block p{font-size:13.5px; color:var(--muted); line-height:1.6; max-width:720px;}
.service-features{display:flex; flex-wrap:wrap; gap:10px; margin-top:16px;}
.service-features span{background:var(--paper); border:1px solid #e4e1d4; border-radius:20px; padding:6px 14px; font-size:11.5px; font-weight:600; color:var(--black);}

/* ===== SIMPLE CONTENT PAGE HELPERS ===== */
.content-page-body{padding:44px 0;}
.simple-list{list-style:none; padding:0; margin:0;}
.simple-list li{display:flex; align-items:flex-start; gap:10px; padding:10px 0; border-bottom:1px solid #f0efe8; font-size:13.5px; color:var(--black);}
.simple-list li:last-child{border-bottom:none;}
.check-ic{color:var(--green); font-weight:800; flex-shrink:0;}

/* ===== CONTACT FORM ===== */
.contact-form{max-width:640px; margin-top:8px;}
.form-row{display:flex; gap:16px; margin-bottom:14px;}
.form-group{flex:1;}
.form-group label{display:block; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:0.03em; margin-bottom:6px; color:var(--black);}
.form-group input, .form-group textarea{width:100%; border:1px solid #d9d5c6; border-radius:6px; padding:11px 12px; font-family:'Inter',sans-serif; font-size:13px; background:#fff;}
.checkbox-group{margin-bottom:18px;}
.checkbox-group label{display:flex; align-items:center; gap:8px; font-size:13px; font-weight:600; margin-bottom:8px; text-transform:none;}
.checkbox-group input{width:auto;}
.contact-rings .rings-lg{position:absolute; right:60px; top:50%; transform:translateY(-50%); opacity:0.09; width:380px; height:380px; pointer-events:none;}
.rings-host{position:relative; overflow:hidden;}

/* ===== HAMBURGER MENU ===== */
.hamburger{display:none; flex-direction:column; justify-content:center; gap:5px; width:36px; height:36px; background:none; border:none; cursor:pointer; padding:0; flex-shrink:0;}
.hamburger span{display:block; width:100%; height:3px; background:var(--black); border-radius:2px; transition:transform 0.2s ease, opacity 0.2s ease;}
.hamburger.open span:nth-child(1){transform:translateY(8px) rotate(45deg);}
.hamburger.open span:nth-child(2){opacity:0;}
.hamburger.open span:nth-child(3){transform:translateY(-8px) rotate(-45deg);}
.mobile-menu{display:none; flex-direction:column; background:#fff; border-top:1px solid #e4e1d4; box-shadow:0 12px 20px -8px rgba(0,0,0,0.12);}
.mobile-menu.open{display:flex;}
.mobile-menu a{padding:15px 24px; font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; color:var(--black); text-decoration:none; border-bottom:1px solid #f0efe8;}
.mobile-menu a:last-child{border-bottom:none;}
.mobile-menu .mm-sub{padding-left:38px; font-size:12.5px; font-weight:600; color:var(--muted);}
.mobile-menu .cta-btn{margin:14px 24px; text-align:center;}

/* ===== RESPONSIVE — TABLET ===== */
@media (max-width:1024px){
  .links{gap:0;}
  .links a{margin-right:14px; font-size:11.5px;}
}

/* ===== RESPONSIVE — MOBILE ===== */
@media (max-width:860px){
  .links{display:none;}
  .nav .cta-btn{display:none;}
  .hamburger{display:flex;}

  .wrap{padding:0 20px;}
  section{padding:36px 0;}

  .slider{height:auto; min-height:520px;}
  .slide-content{padding:0 24px; max-width:100%;}
  .slide h1{font-size:26px;}
  .slide h1.quote{font-size:19px;}
  .slide p{font-size:12.5px;}
  .slider-ghost-mark{width:180px; right:20px; opacity:0.14;}
  .slider-dots{left:24px;}

  .page-hero{padding:40px 0 32px;}
  .page-hero h1{font-size:26px;}

  .packages{flex-direction:column;}
  .ai-shift-grid{flex-direction:column; gap:24px;}
  .ai-shift-grid > div:first-child{flex:1;}

  .gwen-teaser{flex-direction:column; max-height:none;}
  .gwen-logo-half{padding:24px;}
  .gwen-text-half{padding:24px;}

  .review-cards{flex-direction:column;}
  .reviews-top{flex-direction:column;}

  .founder{flex-direction:column; gap:20px;}
  .founder-photo{width:140px; height:150px;}

  .portfolio-grid{flex-direction:column;}

  .foot-grid{flex-direction:column; gap:28px;}

  .form-row{flex-direction:column; gap:0;}

  .service-block-top{flex-wrap:wrap;}

  section > .wrap > div[style*="display:flex"][style*="gap:44px"]{flex-direction:column;}
}

/* ===== TOOLS DROPDOWN (desktop) ===== */
.nav-item{position:relative;}
.nav-item > a{display:inline-flex; align-items:center; gap:4px;}
.dropdown{position:absolute; top:100%; left:50%; transform:translateX(-50%); padding-top:12px; opacity:0; visibility:hidden; transition:opacity 0.15s ease; z-index:100;}
.nav-item:hover .dropdown{opacity:1; visibility:visible;}
.dropdown-inner{background:#fff; border-radius:8px; box-shadow:0 16px 32px -12px rgba(11,11,11,0.25); padding:8px; min-width:210px; position:relative; z-index:101;}
.dropdown-inner a{display:block; padding:10px 14px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.02em; color:var(--black); text-decoration:none; border-radius:5px; white-space:nowrap;}
.dropdown-inner a:hover{background:var(--paper); color:var(--green-deep);}

/* ===== BREADCRUMBS ===== */
.breadcrumb{background:var(--paper); padding:10px 0; font-size:12px; color:var(--muted);}
.breadcrumb a{color:var(--muted); text-decoration:none;}
.breadcrumb a:hover{color:var(--green-deep);}
.breadcrumb span.sep{margin:0 6px; color:#c9c5b4;}
.breadcrumb span.current{color:var(--black); font-weight:700;}

@media (max-width:860px){
  .audit-card-cta{margin-top:16px; display:inline-block;}
}
