/* XY STUDIO V13 — type, grid, interaction and form system */
:root{
  --v13-ink:#141414;
  --v13-muted:#65655f;
  --v13-paper:#f6f6f1;
  --v13-surface:#ffffff;
  --v13-line:#dcdcd4;
  --v13-yellow:#f5c400;
  --v13-yellow-soft:#fbf3bd;
  --v13-black:#0f0f0f;
  --v13-green:#6bb77a;
  --v13-amber:#d7a63c;
  --v13-red:#d76b61;
  --v13-max:1240px;
  --v13-radius:24px;
}

html{scroll-behavior:smooth}
body{
  background:var(--v13-paper);
  color:var(--v13-ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  font-weight:400;
  line-height:4.55;
  letter-spacing:-.01em;
  overflow-x:hidden;
}
.container{width:min(var(--v13-max),calc(100% - 64px));margin-inline:auto}
section{padding:104px 0}
section+section{border-top:1px solid rgba(20,20,20,.055)}

/* editorial typography */
h1,h2,h3{color:var(--v13-ink);text-wrap:balance}
p{max-width:72ch}
.hero h1{max-width:980px;font-size:clamp(48px,6.4vw,88px);line-height:.96;letter-spacing:-.065em;font-weight:520;margin:20px 0 28px;color: #ffffff;}
.hero p{max-width:700px;font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:#ffffff}
.section-head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:72px;align-items:end;margin-bottom:44px}
.section-head h2{max-width:820px;font-size:clamp(36px,4.1vw,58px);line-height:.99;letter-spacing:-.06em;font-weight:510;margin:8px 0 0}
.section-head p{justify-self:end;max-width:500px;margin:0;color:#66665f;font-size:15px;line-height:1.7}
.editorial{display:grid;grid-template-columns:170px minmax(0,720px);gap:50px;align-items:start}
.editorial-copy{font-size:17px;line-height:1.78;color:#30302d}
.editorial-copy p{margin:0 0 24px}
.editorial-copy p:last-child{margin-bottom:0}
.editorial-label{font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:#8a8a83;padding-top:6px}
.eyebrow,.section-kicker,.tag{letter-spacing:.14em;text-transform:uppercase}
.eyebrow,.section-kicker{font-size:10px;line-height:1.25;font-weight:650;color:#8a8a83}

/* rhythm & grids */
.grid,.grid2,.grid4{align-items:stretch;gap:14px}
.card{position:relative;min-width:0;min-height:0;height:100%;padding:26px;border:1px solid var(--v13-line);border-radius:20px;background:rgba(255,255,255,.92);box-shadow:none;display:flex;flex-direction:column;gap:0}
.card h3{font-size:22px;line-height:1.08;letter-spacing:-.042em;font-weight:530;margin:13px 0 10px}
.card p{font-size:14px;line-height:1.58;color:#60605a;margin:0}
.card .arrow{margin-top:auto;padding-top:24px;align-self:flex-end;line-height:1}
.card .tag{color:#92928b;font-size:9px}
.interactive-card{cursor:pointer}
/* no hover on non-links */
.card:not(.interactive-card):hover{transform:none;box-shadow:none;background:rgba(255,255,255,.92)}
.interactive-card{transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.interactive-card:hover{background:var(--v13-yellow);border-color:var(--v13-yellow);color:#111;transform:translateY(-1px)}
.interactive-card:hover p,.interactive-card:hover .tag{color:#2e2c21}
.interactive-card:hover .arrow{transform:translate(2px,-2px)}

/* explicit link buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:11px 17px;border:1px solid transparent;border-radius:999px;font-size:13px;font-weight:600;line-height:1;text-decoration:none;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease}
.btn.primary{background:var(--v13-yellow);border-color:var(--v13-yellow);color:#111}
.btn.dark{background:#111;border-color:#111;color:#fff}
.btn.white{background:#fff;border-color:#cfcfc8;color:#111}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(0,0,0,.08);text-decoration:none}
.btn.primary:hover{background:#ffd52e;border-color:#ffd52e}
.btn.dark:hover{background:#242424;border-color:#242424}
.btn.white:hover{background:#f3f3ee}
.btn:focus-visible,.interactive-card:focus-visible,.links a:focus-visible,.navcta:focus-visible{outline:3px solid rgba(245,196,0,.55);outline-offset:3px}

/* hero/nav */
.nav{background:rgba(246,246,241,.88);border-bottom:1px solid rgba(20,20,20,.08);backdrop-filter:blur(16px) saturate(120%)}
.navin{min-height:72px}
.links a{transition:background .18s ease,color .18s ease}
.links a:hover{text-decoration:none;background:var(--v13-yellow);color:#111}
.navcta{background:#111!important;color:#fff!important;border:1px solid #111!important}
.navcta:hover{background:#242424!important;border-color:#242424!important}
.hero{background:radial-gradient(720px 360px at 88% 0%,rgba(245,196,0,.14),transparent 60%),linear-gradient(180deg,#fff 0%,var(--v13-paper) 100%)}
.hero.dark{background:radial-gradient(780px 400px at 88% 0%,rgba(245,196,0,.15),transparent 60%),linear-gradient(145deg,#0e0e0e 0%,#141412 72%,#10100f 100%)}
.hero.dark h1,.hero.dark .eyebrow{color:#fff}

/* data blocks */
.stats{border:1px solid var(--v13-line);background:#fff;box-shadow:none}
.stat{padding:28px;min-height:150px}
.stat b{font-size:46px;line-height:1;font-weight:510;letter-spacing:-.05em}
.stat span{display:block;margin-top:10px;color:#6a6a63;font-size:12px;line-height:1.45}
.info-list,.path,.audit-board,.feature-matrix,.funnel{border:0px solid var(--v13-line);box-shadow:none}
.info-row{display:grid;grid-template-columns:minmax(180px,.45fr) minmax(0,1.55fr);gap:28px;padding:18px 0;border-bottom:1px solid var(--v13-line)}
.info-row:last-child{border-bottom:0}
.info-row strong{font-size:13px;line-height:1.35}
.info-row span{font-size:14px;line-height:1.55;color:#5e5e58}
.path{overflow:hidden;border-radius:20px;background:#fff}
.step{min-height:208px;padding:28px;border-right:1px solid var(--v13-line);display:flex;flex-direction:column}
.step:last-child{border-right:0}
.step h3{font-size:19px;line-height:1.05;font-weight:520;letter-spacing:-.03em;margin:14px 0 9px}
.step p{margin:0;font-size:13px;color:#676760;line-height:1.55}
.step .num{width:30px;height:30px;display:grid;place-items:center;border:1px solid #bcbcb5;border-radius:50%;font-size:10px}

/* leadboxes: button never blends with background */
.leadbox{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:42px;align-items:center;padding:38px;border-radius:24px;background:linear-gradient(135deg,#f5c400 0%,#f7d34a 100%);border:1px solid rgba(20,20,20,.12);box-shadow:none}
.leadbox h2{font-size:clamp(32px,4vw,52px);font-weight:510;line-height:1;letter-spacing:-.06em;margin:8px 0 11px}
.leadbox p{margin:0;color:#37362f;font-size:15px;line-height:1.6}
.leadbox .btn,.leadbox .btn.primary,.leadbox .btn.dark{background:#111;border-color:#111;color:#fff}
.leadbox .btn:hover{background:#262626;border-color:#262626;color:#fff}
.leadbox.darkbox{background:linear-gradient(145deg,#101010,#181814);border-color:#282824;color:#fff}
.leadbox.darkbox h2,.leadbox.darkbox .eyebrow{color:#fff}
.leadbox.darkbox p{color:#c2c2bc}
.leadbox.darkbox .btn{background:var(--v13-yellow);border-color:var(--v13-yellow);color:#111}
.leadbox-side{display:grid;gap:10px;min-width:280px}
.choice{padding:14px 16px;border:1px solid rgba(20,20,20,.13);border-radius:15px;background:#fff}
.choice strong{display:block;font-size:12px}
.choice span{display:block;margin-top:4px;font-size:11px;color:#686861;line-height:1.45}

/* forms */
.form{background:#fff;border:1px solid var(--v13-line);border-radius:24px;padding:36px;box-shadow:none}
.formgrid{gap:18px}
.field{display:grid;gap:7px}
.field label{font-size:11px;font-weight:620;color:#45453f}
.field input,.field select,.field textarea{width:100%;background:#fff;border:1px solid #c8c8c0;border-radius:12px;padding:12px 14px;font:inherit;font-size:14px;color:#111;outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
.field input,.field select{min-height:48px}
.field textarea{min-height:150px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:#989891}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#999991}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#111;box-shadow:0 0 0 3px rgba(245,196,0,.22)}
.form .contact-form>button,.form button.btn,.form .btn{background:#111!important;border-color:#111!important;color:#fff!important;min-height:48px}
.form .contact-form>button:hover,.form button.btn:hover,.form .btn:hover{background:#272727!important;border-color:#272727!important}
.formnote{font-size:11px;line-height:1.5;color:#8a8a83}
.notice{border:1px solid #deded6;background:#f1f1eb;border-radius:14px;padding:13px 15px;color:#55554f;margin-bottom:22px}
.success{border:1px solid #b7dbbf;background:#edf7ef;border-radius:14px;padding:14px 16px;color:#315b39;margin-top:16px}

/* FAQ and SEO */
.seo-section,.related{background:linear-gradient(180deg,#f7f7f3 0%,#f7f7f3 100%)}
.faq{gap:8px}
.faq details{background:#fff;border:1px solid var(--v13-line);border-radius:16px;padding:0 20px}
.faq details:hover{border-color:#b9b9b1}
.faq summary{padding:20px 0;font-size:15px;font-weight:520;line-height:1.35}
.faq .answer{padding:0 0 20px;max-width:860px;font-size:14px;line-height:1.68;color:#5d5d56}

/* case presentation */
.case-list{border-top:1px solid var(--v13-line)}
.case{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;padding:34px 0;border-bottom:1px solid var(--v13-line)}
.case h3{font-size:24px;line-height:1.05;letter-spacing:-.04em;font-weight:520;margin:0 0 8px}
.case p{font-size:15px;line-height:1.7;color:#5c5c56;margin:0}
.case-actions-inline{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.case-actions-inline .btn{min-height:40px;padding:9px 13px;font-size:12px}

/* X-Ray report */
.report{background:radial-gradient(520px 260px at 96% 0%,rgba(245,196,0,.12),transparent 62%),linear-gradient(145deg,#0f0f0f,#171715);border:1px solid #2e2e2a;border-radius:26px;padding:34px;color:#fff;box-shadow:none}
.metric{background:rgba(255,255,255,.025);border:1px solid #2e2e2b;border-radius:16px;padding:16px}
.metric-fill{background:linear-gradient(90deg,#f5c400,#ffe166)}
.metric-details{border-top:1px dashed #343430}
.metric-details summary{color:#bdbdb6}
.audit-row{grid-template-columns:minmax(190px,1.1fr) minmax(260px,1.5fr) 150px 120px}
.audit-row>*{border-right:1px solid var(--v13-line);padding:17px 18px}
.audit-head{background:#efefe9}
.xray-method{border:1px solid #2c2c29;background:rgba(255,255,255,.02);border-radius:20px;padding:24px}
.xray-criterion{background:rgba(255,255,255,.018);border:1px solid #30302d;border-radius:14px}

/* footer = quiet, no extra CTA journey */
.footer{padding:64px 0 24px;background:#101010;color:#fff}
.footer a{transition:color .18s ease,opacity .18s ease}
.footer a:hover{color:var(--v13-yellow);text-decoration:none}
.footerbottom{border-color:#292927}

/* responsive */
@media (max-width:1100px){
  .container{width:min(var(--v13-max),calc(100% - 48px))}
  section{padding:88px 0}
  .section-head{grid-template-columns:1fr;gap:16px}
  .section-head p{justify-self:start;max-width:720px}
  .editorial{grid-template-columns:120px minmax(0,1fr);gap:28px}
  .case{grid-template-columns:1fr;gap:16px}
  .leadbox{grid-template-columns:1fr;gap:24px}
  .leadbox-side{min-width:0;max-width:420px}
}
@media (max-width:700px){
  .container{width:calc(100% - 28px)}
  section{padding:72px 0}
  .hero{padding:72px 0 54px}
  .hero h1{font-size:44px;line-height:.98;letter-spacing:-.06em;margin-bottom:22px}
  .hero p{font-size:17px;line-height:1.55}
  .section-head{margin-bottom:30px;gap:12px}
  .section-head h2{font-size:35px;line-height:1.01}
  .editorial{grid-template-columns:1fr;gap:10px}
  .editorial-label{padding-top:0}
  .editorial-copy{font-size:16px;line-height:1.68}
  .card{padding:22px;border-radius:18px}
  .card h3{font-size:21px}
  .grid,.grid2,.grid4,.stats,.path,.formgrid,.footergrid{grid-template-columns:1fr}
  .step{min-height:auto;padding:24px;border-right:0;border-bottom:1px solid var(--v13-line)}
  .step:last-child{border-bottom:0}
  .info-row{grid-template-columns:1fr;gap:7px;padding:17px 0}
  .actions{display:grid;grid-template-columns:1fr;gap:8px}
  .actions .btn{width:100%}
  .leadbox{padding:25px;border-radius:20px}
  .leadbox-side{display:grid;max-width:none}
  .form{padding:22px;border-radius:20px}
  .case-actions-inline{display:flex}
  .case-actions-inline .btn{width:auto}
  .report{padding:22px;border-radius:20px}
  .funnel{grid-template-columns:1fr}
  .audit-board,.feature-matrix{overflow:auto}
  .audit-row{min-width:760px}
  .feature-row{min-width:720px}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
}

/* final alignment refinements */
.section-head{align-items:start}
.section-head p{padding-top:27px}
.industry-deep{width:100%}
.industry-deep>.container{width:100%;padding:0}
.grid>.card,.grid2>.card,.grid4>.card{align-self:stretch}
.card .arrow{transition:transform .18s ease}
.case-actions-inline .btn{white-space:nowrap}
.leadbox>.btn{align-self:center;white-space:nowrap}
@media (max-width:700px){.section-head p{padding-top:0}.leadbox>.btn{width:100%}}
