/* CIRBOXA – Website Stylesheet */
@font-face{
  font-family:"Cormorant Garamond";
  font-style:normal;
  font-weight:500 700;
  font-display:swap;
  src:url("/assets/fonts/cormorant-garamond-latin-normal.woff2") format("woff2");
}
@font-face{
  font-family:"Cormorant Garamond";
  font-style:italic;
  font-weight:500 700;
  font-display:swap;
  src:url("/assets/fonts/cormorant-garamond-latin-italic.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:300 700;
  font-display:swap;
  src:url("/assets/fonts/inter-latin-normal.woff2") format("woff2");
}
:root{
  --navy: #0c1d31;
  --navy-light: #142b45;
  --navy-lighter: #2a527c;
  --sand: #d39a4d;
  --sand-dark: #bd8440;
  --bg: #f8f7f4;
  --bg-alt: #eef1f4;
  --text: #172033;
  --text-muted: #59677a;
  --white: #ffffff;
  --border: #dde2e8;
  --radius: 11px;
  --shadow: 0 2px 10px rgba(12,29,49,.045);
  --maxw: 1280px;
  font-size: 16px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.65;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%; display:block;}
a{color:inherit;}
button,input,select,textarea{font:inherit;}
:focus-visible{outline:3px solid var(--sand);outline-offset:3px;}
.container{width:min(var(--maxw),calc(100% - 48px)); margin:0 auto; padding:0;}
.visually-hidden{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;}

/* Skip link */
.skip-link{position:absolute; left:-999px; top:0; background:var(--navy); color:#fff; padding:10px 16px; z-index:200;}
.skip-link:focus{left:12px; top:12px;}

/* Header */
.site-header{
  position:sticky; top:0; z-index:100;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(16,35,59,.09);
}
.header-inner{display:flex; align-items:center; justify-content:space-between; min-height:100px; width:min(var(--maxw),calc(100% - 48px)); padding:8px 0; margin:0 auto;}
.logo-link{display:flex; align-items:center;}
.logo-link img{height:72px; width:72px; object-fit:contain;}
.main-nav{display:flex; align-items:center; gap:22px; flex-wrap:wrap;}
.main-nav a{text-decoration:none; font-size:.9rem; font-weight:600; color:var(--text); letter-spacing:-.01em;}
.main-nav a:hover, .main-nav a[aria-current="page"]{color:var(--navy); text-decoration:underline; text-underline-offset:4px;}
.lang-switch{display:flex; gap:8px; align-items:center; font-size:.85rem;}
.lang-switch a{padding:2px 8px; border:1px solid var(--border); border-radius:999px; text-decoration:none;}
.lang-switch a[aria-current="true"]{background:var(--navy); color:#fff; border-color:var(--navy);}
.nav-toggle{display:none;}
.header-actions{display:flex; align-items:center; gap:14px;}
.header-actions>.btn{background:var(--sand);color:var(--navy);}
.header-actions>.btn:hover{background:var(--sand-dark);color:var(--navy);}

.btn{
  display:inline-flex; align-items:center; justify-content:center; min-height:54px; padding:16px 24px; border-radius:11px; font-weight:700; font-size:.94rem;
  text-decoration:none; border:2px solid transparent; cursor:pointer; transition:transform .15s ease, box-shadow .15s ease;
}
.btn-primary{background:var(--navy); color:#fff;}
.btn-primary:hover{background:var(--navy-light);}
.btn-secondary{background:transparent; color:var(--navy); border-color:var(--navy);}
.btn-secondary:hover{background:var(--navy); color:#fff;}
.btn-sand{background:var(--sand); color:var(--navy);}
.btn-sand:hover{background:var(--sand-dark);}
.btn-block{display:block; width:100%; text-align:center;}
.btn-small{min-height:54px;padding:15px 24px;font-size:.9rem;}

.cta-row{display:flex; gap:14px; flex-wrap:wrap; margin-top:24px;}

/* Hero */
.hero{
  position:relative; color:#fff; overflow:hidden;
  background:var(--navy);
}
.hero-editorial{background:var(--navy);}
.hero-bg{position:absolute; inset:0; object-fit:cover; width:100%; height:100%; z-index:-1; opacity:.9;}
.hero-inner{width:min(var(--maxw),calc(100% - 48px)); margin:0 auto; padding:72px 0 88px;}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);gap:72px;align-items:center;min-height:720px;padding-top:72px;padding-bottom:88px;}
.hero-copy{min-width:0;}
.eyebrow{text-transform:uppercase; letter-spacing:.14em; font-size:.78rem; font-weight:700; color:var(--sand);}
.hero h1{font-size:clamp(58px,6vw,92px); margin:14px 0 28px; max-width:940px; line-height:.98; font-weight:400; letter-spacing:-.025em;color:#f7f5f0;}
.hero p.lead{font-size:1.15rem; max-width:680px; color:#e7ecf3;}
.hero-detail{font-size:.98rem;max-width:680px;color:#b9c6d3;margin-top:22px;}
.btn-hero-outline{background:transparent;color:#f5f5f2;border-color:#718096;}
.btn-hero-outline:hover{background:#fff;color:var(--navy);}
.report-preview{background:#fff;color:var(--text);padding:34px;border:1px solid #e0e4e9;border-radius:18px;box-shadow:none;transform:translateY(16px);}
.sample-label{display:inline-block;padding:5px 10px;margin-bottom:14px;border-radius:999px;background:#eef1f4;color:var(--text-muted);font-size:.76rem;font-weight:600;}
.report-line{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid var(--border);font-size:1rem;}
.report-line:last-child{border-bottom:0;}
.report-line strong{text-align:right;}
.report-check{color:#267355;font-size:1.25rem;}
.hero-stats{display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:18px; margin-top:40px; max-width:900px;}
.hero-stat{background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18); border-radius:var(--radius); padding:16px 18px;}
.hero-stat strong{display:block; font-size:1rem; color:var(--sand); margin-bottom:4px;}
.hero-stat span{font-size:.92rem; color:#dfe6ef;}

/* Sections */
section{padding:84px 0;}
.section-alt{background:var(--bg-alt);}
h1,h2,h3{font-family:"Cormorant Garamond", Georgia, serif;}
h2{font-size:clamp(2.25rem,4vw,3.55rem); line-height:1.08; font-weight:500; letter-spacing:-.018em; margin-top:0; margin-bottom:18px;}
h3{font-size:1.42rem; line-height:1.15; font-weight:600;}
h2.center, .section-intro{text-align:center; max-width:720px; margin-left:auto; margin-right:auto;}
.section-intro{color:var(--text-muted); margin-bottom:44px;}
.section-head{max-width:780px; margin:0 auto 48px; text-align:center;}
.section-head>p:not(.eyebrow){font-size:1.02rem;color:var(--text-muted);}

/* Process steps */
.process-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:22px;}
.process-step{background:#fff; border:1px solid #dde2e8; border-radius:var(--radius); padding:28px; box-shadow:none;}
.process-step .num{font-size:.8rem; font-weight:700; color:var(--sand-dark); letter-spacing:.05em;}
.process-step h3{margin:8px 0 12px;}
.process-step p{color:var(--text-muted); font-size:.95rem; margin:0;}

/* Image + text split */
.split{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:center;}
.split-single{grid-template-columns:minmax(0,820px);justify-content:center;}
.split.reverse .split-media{order:2;}
.split-media img{border-radius:var(--radius); box-shadow:none; aspect-ratio:4/3; object-fit:cover;}
.split-text ul{padding-left:20px; color:var(--text-muted);}
.split-text li{margin-bottom:8px;}

/* Cards */
.card-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:22px;}
.card{background:#fff; border:1px solid #dde2e8; border-radius:var(--radius); padding:30px; box-shadow:none;}
.card h3{margin-top:0;}

/* Testimonial / social proof */
.proof-strip{background:var(--navy); color:#fff;}
.proof-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:22px;}
.proof-card{background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.15); border-radius:var(--radius); padding:22px;}
.proof-card .quote{font-size:1.02rem; margin-bottom:12px;}
.proof-card .who{color:var(--sand); font-size:.85rem; font-weight:600;}

/* Pricing */
.pricing-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:22px;}
.pricing-card{background:#fff; border:1px solid #dde2e8; border-radius:var(--radius); padding:32px; text-align:left; box-shadow:none;}
.pricing-card .price{font-size:1.7rem; font-weight:700; color:var(--navy); margin:6px 0 4px;}
.pricing-card .note{color:var(--text-muted); font-size:.85rem;}
.pricing-disclaimer{margin-top:26px; font-size:.9rem; color:var(--text-muted); text-align:center;}
.pricing-focus,.positioning-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:48px;align-items:center;max-width:1080px;margin:0 auto;padding:48px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);}
.pricing-focus>div,.positioning-panel>div{min-width:0;}
.pricing-focus p:not(.eyebrow),.positioning-panel p:not(.eyebrow){max-width:760px;color:var(--text-muted);}
.pricing-focus .btn,.positioning-panel .btn{white-space:nowrap;}
.process-line{font-weight:700;color:var(--navy)!important;letter-spacing:-.01em;overflow-wrap:anywhere;}

/* Operational photography */
.operations-feature{max-width:1280px;margin:0 auto;position:relative;scroll-margin-top:110px;}
.operations-feature picture,.operations-feature img{display:block;width:100%;}
.operations-feature img{height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:var(--radius);}
.operations-feature figcaption{margin:14px 4px 0;color:var(--text-muted);font-size:.88rem;}

/* Founder feature */
.founder-feature{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1fr);gap:64px;align-items:center;max-width:1080px;margin:0 auto;}
.founder-feature picture,.founder-feature img{display:block;width:100%;}
.founder-feature img{aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);}
.founder-copy{max-width:610px;}
.founder-copy>p{font-size:1.05rem;color:var(--text-muted);}

/* Case studies */
.case-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); gap:22px;}
.case-card{background:var(--bg-alt); border-left:4px solid var(--sand); border-radius:6px; padding:22px;}
.case-card .metric{font-size:1.5rem; font-weight:700; color:var(--navy);}

/* Reporting mockup (coded, no photo needed) */
.report-mock{background:#fff; border:1px solid var(--border); border-radius:var(--radius); box-shadow:none; padding:22px; max-width:520px;}
.report-mock .row{display:flex; justify-content:space-between; align-items:center; padding:10px 0; border-bottom:1px dashed var(--border); font-size:.9rem;}
.report-mock .row:last-child{border-bottom:none;}
.report-mock .bar-track{background:var(--bg-alt); border-radius:6px; height:10px; width:60%; overflow:hidden;}
.report-mock .bar-fill{background:var(--sand-dark); height:100%;}
.report-mock .tag{display:inline-block; background:var(--bg-alt); color:var(--navy); font-size:.7rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; padding:3px 8px; border-radius:999px; margin-bottom:10px;}

/* Founder */
.founder-wrap{display:grid; grid-template-columns:220px 1fr; gap:36px; align-items:center;}
.founder-wrap img{border-radius:50%; box-shadow:none;}
.founder-note{background:var(--bg-alt); border-radius:var(--radius); padding:16px 18px; font-size:.9rem; color:var(--text-muted); margin-top:18px;}

/* FAQ */
.faq details{background:#fff; border:1px solid var(--border); border-radius:var(--radius); padding:16px 20px; margin-bottom:12px;}
.faq summary{cursor:pointer; font-weight:600;}
.faq p{color:var(--text-muted); margin:10px 0 0;}

/* Forms */
.form-card{background:#fff; border:1px solid #dde2e8; border-radius:11px; padding:36px; box-shadow:none; max-width:680px; margin:0 auto;}
.form-row{margin-bottom:18px;}
.form-row label{display:block; font-weight:600; font-size:.9rem; margin-bottom:6px;}
.form-row input, .form-row select, .form-row textarea{
  width:100%; min-height:48px; padding:12px 14px; border:1px solid #cbd3dc; border-radius:8px; font-size:.95rem; font-family:inherit; background:#fff;
}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--navy);box-shadow:0 0 0 3px rgba(16,35,59,.1);outline:0;}
.form-row .req{color:var(--sand-dark);}
.optional-block{border:1px solid var(--border); border-radius:var(--radius); margin:8px 0 22px;}
.optional-block summary{cursor:pointer; padding:14px 18px; font-weight:600; list-style:none; display:flex; align-items:center; gap:8px;}
.optional-block summary::before{content:"+"; font-weight:700; color:var(--navy);}
.optional-block[open] summary::before{content:"–";}
.optional-block .optional-inner{padding:0 18px 18px;}
.form-footnote{font-size:.82rem; color:var(--text-muted); margin-top:10px;}
.honeypot{position:absolute; left:-9999px; top:-9999px;}

/* Footer */
.site-footer{background:var(--navy); color:#dfe6ef; padding:52px 0 26px; margin-top:60px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:32px; margin-bottom:36px;}
.footer-grid h4{color:#fff; font-size:.9rem; text-transform:uppercase; letter-spacing:.06em; margin-bottom:14px;}
.footer-grid ul{list-style:none; padding:0; margin:0;}
.footer-grid li{margin-bottom:9px; font-size:.92rem;}
.footer-grid a{text-decoration:none; color:#c7d2e0;}
.footer-grid a:hover{color:#fff; text-decoration:underline;}
.footer-logo{display:block; width:112px; height:112px; object-fit:contain; border-radius:10px; margin-bottom:14px;}
.footer-bottom{border-top:1px solid rgba(255,255,255,.15); padding-top:20px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:.82rem; color:#9fb0c6;}
.privacy-settings-link{appearance:none;border:0;padding:0;background:transparent;color:#c7d2e0;font:inherit;text-decoration:underline;cursor:pointer;}
.privacy-settings-link:hover,.privacy-settings-link:focus-visible{color:#fff;}

/* Google Ads consent */
.consent-banner{position:fixed;z-index:1000;left:20px;right:20px;bottom:20px;margin:0 auto;max-width:1080px;background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 18px 48px rgba(16,35,59,.2);}
.consent-banner[hidden]{display:none;}
.consent-banner__inner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 24px;}
.consent-banner__copy p{margin:0;color:var(--text);font-size:.92rem;line-height:1.6;}
.consent-banner__copy a{color:var(--navy);font-weight:600;}
.consent-banner__actions{display:flex;gap:12px;flex:0 0 auto;}
.consent-banner__actions .btn{min-width:116px;}

/* Thank you page */
.thankyou{text-align:center; padding:120px 24px;}
.thankyou .icon{font-size:3rem; margin-bottom:18px;}

/* Responsive */
@media (max-width: 900px){
  .split, .founder-wrap,.hero-grid{grid-template-columns:1fr;}
  .founder-feature,.pricing-focus,.positioning-panel{grid-template-columns:1fr;}
  .founder-feature{gap:36px;}
  .founder-feature picture{max-width:620px;}
  .pricing-focus,.positioning-panel{gap:24px;padding:36px;}
  .hero-grid{gap:42px;}
  .report-preview{max-width:620px;transform:none;}
  .footer-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width: 720px){
  .operations-feature{scroll-margin-top:210px;}
  .header-inner{flex-wrap:wrap; gap:12px;}
  .main-nav{order:3; width:100%; justify-content:flex-start; gap:14px 18px;}
  .logo-link img{height:58px;width:58px;}
  .header-actions .btn{display:none;}
  .hero-inner{padding:64px 20px 54px;}
  .hero h1{font-size:clamp(2.65rem,13vw,4rem);}
  .hero p.lead{font-size:1.03rem;}
  .container{padding:0 20px;}
  .form-card{padding:24px 20px;}
  .footer-grid{grid-template-columns:1fr;}
  section{padding:60px 0;}
  .pricing-focus,.positioning-panel{padding:28px 22px;}
  .pricing-focus .btn,.positioning-panel .btn{white-space:normal;text-align:center;}
  .operations-feature figcaption{font-size:.82rem;}
  .consent-banner{left:12px;right:12px;bottom:12px;}
  .consent-banner__inner{align-items:stretch;flex-direction:column;gap:18px;padding:20px;}
  .consent-banner__actions{display:grid;grid-template-columns:1fr 1fr;}
  .consent-banner__actions .btn{min-width:0;padding-left:14px;padding-right:14px;}
}
@media (max-width: 420px){
  .header-inner{padding-left:16px;padding-right:16px;}
  .main-nav{gap:10px 14px;}
  .main-nav a{font-size:.82rem;}
  .lang-switch a{padding:2px 7px;}
  .hero-stats{grid-template-columns:1fr 1fr;gap:10px;}
  .hero-stat{padding:13px;}
  .report-preview{padding:22px 18px;border-radius:12px;}
  .report-line{font-size:.88rem;gap:12px;}
}
