/* ==========================================================
   [Company Name] -- Consolidated Stylesheet
   Design tokens + shared components used across every page.
   Generated from the per-page styles built in Phases 3-11.
   ========================================================== */


/* ---- Design tokens & base ---- */

:root{
  --navy-900:#0F2A4E; --navy-700:#16386A; --navy-500:#1B437B; --navy-300:#4E70A0; --navy-100:#DCE4EF;
  --orange-700:#C4813F; --orange-500:#E9A662; --orange-300:#F0C293; --orange-100:#FBEEDD;
  --ink-900:#2D2D2D; --ink-700:#4A4A4A; --ink-500:#7A7A7A; --line:#D8DADB; --bg:#F7F8F8; --white:#FFFFFF;
  --radius-sm:4px; --radius-md:8px; --sh:0 2px 16px rgba(15,42,78,0.08);
  --success:#2F7A5E; --error:#B3452F;
}

*{box-sizing:border-box; margin:0; padding:0;}

html{scroll-behavior:smooth;}

body{
  font-family:'Inter',sans-serif; color:var(--ink-900); background:var(--bg);
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{font-family:'Montserrat',sans-serif; color:var(--navy-900); line-height:1.15; letter-spacing:-0.01em;}

.eyebrow{
  font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.12em; text-transform:uppercase;
  color:var(--orange-700); display:flex; align-items:center; gap:10px; margin-bottom:16px; font-weight:500;
}

.eyebrow::before{content:''; width:20px; height:2px; background:var(--orange-500); display:inline-block;}

.wrap{max-width:1240px; margin:0 auto; padding:0 32px;}

a{color:inherit; text-decoration:none;}

header{
  position:sticky; top:0; z-index:50; background:var(--navy-900);
  border-bottom:1px solid rgba(255,255,255,0.08);
}

.nav-inner{display:flex; align-items:center; justify-content:space-between; padding:14px 32px; max-width:1320px; margin:0 auto; gap:20px;}

.logo{display:flex; align-items:center; gap:10px; flex:none;}

.logo-mark{height:38px; width:auto; display:block;}

.logo-text{font-family:'Montserrat',sans-serif; font-weight:800; font-size:16px; color:#fff; letter-spacing:-0.01em; line-height:1.1; white-space:nowrap;}

.logo-text em{display:block; font-style:normal; font-family:'JetBrains Mono',monospace; font-weight:500; font-size:9px; letter-spacing:0.14em; text-transform:uppercase; color:var(--orange-500); margin-top:1px;}

.nav-links{display:flex; align-items:center; gap:22px; list-style:none; flex-wrap:nowrap;}

.nav-links a, .nav-links .nav-link{
  font-size:12.5px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:rgba(255,255,255,0.82);
  position:relative; padding-bottom:4px; background:none; border:none; cursor:pointer; font-family:'Inter',sans-serif;
  display:inline-flex; align-items:center; gap:4px; white-space:nowrap;
}

.nav-links a.active, .nav-links a:hover, .nav-links .nav-link.active, .nav-links .nav-link:hover{color:#fff;}

.nav-links a::after, .nav-links .nav-link::after{content:''; position:absolute; left:0; bottom:0; width:0; height:2px; background:var(--orange-500); transition:width .2s ease;}

.nav-links a.active::after, .nav-links a:hover::after, .nav-links .nav-link.active::after, .nav-links .nav-link:hover::after{width:100%;}

.caret{font-size:9px; margin-left:1px;}

.dropdown{position:relative;}

.dropdown-menu{
  position:absolute; top:100%; left:50%; transform:translateX(-50%) translateY(6px);
  background:var(--navy-700); border:1px solid rgba(255,255,255,0.12); border-radius:var(--radius-sm);
  list-style:none; min-width:200px; padding:8px; margin-top:10px;
  opacity:0; visibility:hidden; transition:opacity .15s ease, transform .15s ease;
  box-shadow:0 12px 24px rgba(0,0,0,0.25); z-index:60;
}

.dropdown:hover .dropdown-menu, .dropdown.open .dropdown-menu{
  opacity:1; visibility:visible; transform:translateX(-50%) translateY(0);
}

.dropdown-menu li{list-style:none;}

.dropdown-menu a{
  display:block; padding:9px 12px; font-size:12.5px; font-weight:500; text-transform:none; letter-spacing:0.01em;
  color:rgba(255,255,255,0.85); border-radius:4px; white-space:nowrap;
}

.dropdown-menu a::after{display:none;}

.dropdown-menu a:hover{background:rgba(255,255,255,0.08); color:#fff;}

.nav-cta{
  background:var(--orange-500); color:var(--navy-900); font-weight:700; font-size:13px; letter-spacing:0.04em;
  padding:12px 22px; border-radius:var(--radius-sm); text-transform:uppercase; white-space:nowrap; flex:none;
  transition:transform .15s ease, background .15s ease;
}

.nav-cta:hover{background:var(--orange-300); transform:translateY(-2px);}

.hamburger{display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; flex:none; padding:6px;}

.hamburger span{width:24px; height:2px; background:#fff; transition:transform .2s ease, opacity .2s ease;}

.hamburger.is-active span:nth-child(1){transform:translateY(7px) rotate(45deg);}

.hamburger.is-active span:nth-child(2){opacity:0;}

.hamburger.is-active span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}

.breadcrumb{background:var(--white); border-bottom:1px solid var(--line); padding:14px 0;}

.breadcrumb .wrap{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--ink-500);}

.breadcrumb a{color:var(--navy-500);}

.breadcrumb a:hover{color:var(--orange-700);}

.page-hero{background:var(--navy-900); color:#fff; padding:72px 0; position:relative; overflow:hidden;}

.page-hero-grid{position:absolute; inset:0; opacity:0.07; background-image:linear-gradient(rgba(255,255,255,0.4) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.4) 1px, transparent 1px); background-size:64px 64px;}

.page-hero .wrap{position:relative; display:flex; justify-content:space-between; align-items:flex-end; gap:32px; flex-wrap:wrap;}

.page-hero h1{color:#fff; font-size:44px; max-width:680px;}

.page-hero p{color:rgba(255,255,255,0.7); font-size:16.5px; max-width:560px; margin-top:18px; line-height:1.65;}

.fee-note{
  display:inline-flex; align-items:center; gap:8px; margin-top:20px; font-family:'JetBrains Mono',monospace;
  font-size:12.5px; font-weight:500; color:var(--orange-300); background:rgba(255,255,255,0.06);
  border:1px solid rgba(255,255,255,0.15); padding:10px 16px; border-radius:20px;
}

.fee-banner{
  background:var(--orange-100); border:1px solid var(--orange-300); border-radius:var(--radius-sm);
  padding:14px 18px; font-size:13px; color:var(--navy-900); line-height:1.55; margin-bottom:24px;
}

.booking-mode-toggle{display:flex; gap:8px; margin-bottom:20px; background:var(--bg); border:1px solid var(--line); border-radius:8px; padding:4px;}

.mode-btn{
  flex:1; background:none; border:none; padding:10px 16px; font-family:'Inter',sans-serif; font-weight:600;
  font-size:13px; color:var(--ink-700); cursor:pointer; border-radius:6px; transition:.15s ease;
}

.mode-btn.active{background:var(--navy-900); color:#fff;}

.mode-btn:hover:not(.active){color:var(--navy-900);}

.team-select-hint{font-size:12.5px; color:var(--ink-700); margin:8px 0 14px; line-height:1.5;}

.team-checkbox-list{display:flex; flex-direction:column; gap:2px; border:1px solid var(--line); border-radius:var(--radius-sm); max-height:280px; overflow-y:auto;}

.team-checkbox-row{display:flex; align-items:center; gap:10px; padding:12px 14px; font-size:13.5px; color:var(--navy-900); border-bottom:1px solid var(--line); cursor:pointer; transition:background .15s ease;}

.team-checkbox-row:last-child{border-bottom:none;}

.team-checkbox-row:hover{background:var(--navy-100);}

.team-checkbox{width:16px; height:16px; flex:none; cursor:pointer; accent-color:var(--navy-900);}

.team-select-count{font-size:12.5px; font-weight:700; color:var(--orange-700); margin-top:10px;}

section{padding:56px 0 88px;}

.alt-bg{background:var(--white); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}

.section-head{display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin-bottom:56px; flex-wrap:wrap;}

.section-head h2{font-size:36px; font-weight:700; max-width:600px;}

.section-head p{color:var(--ink-700); font-size:15.5px; line-height:1.65;}

.split{display:grid; grid-template-columns:1.2fr 0.8fr; gap:56px; align-items:start;}

.split p{color:var(--ink-700); font-size:15.5px; line-height:1.75; margin-bottom:16px;}

.panel{background:var(--navy-100); border-radius:var(--radius-md); padding:32px;}

.panel-sticky{position:sticky; top:96px;}

.lead-text{font-size:19px; font-weight:500; color:var(--navy-900); line-height:1.6; margin-bottom:22px;}

.content-subhead{
  font-family:'JetBrains Mono',monospace; font-size:12px; text-transform:uppercase; letter-spacing:0.1em;
  color:var(--orange-700); font-weight:600; margin:34px 0 12px;
}

.content-subhead:first-of-type{margin-top:4px;}

.pull-quote{
  border-left:3px solid var(--orange-500); padding:2px 0 2px 22px; margin:26px 0;
  font-size:19px; font-weight:700; color:var(--navy-900); line-height:1.5;
}

.closing-line{font-size:17px; font-weight:700; color:var(--navy-900); margin-top:26px;}

.panel .label{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--navy-700); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:12px;}

.panel h4{font-size:18px; margin-bottom:10px;}

.panel p{font-size:13.5px; color:var(--ink-700); line-height:1.6;}

.mv-grid{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line);}

.mv-card{background:var(--white); padding:40px 36px;}

.mv-card .idx{font-family:'JetBrains Mono',monospace; color:var(--orange-700); font-size:12px; margin-bottom:16px;}

.mv-card h3{font-size:22px; margin-bottom:14px;}

.mv-card p{font-size:15px; color:var(--ink-700); line-height:1.7;}

.do-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}

.do-card{border-top:2px solid var(--navy-900); padding-top:22px;}

.do-card h3{font-size:17px; margin-bottom:10px;}

.do-card p{font-size:14px; color:var(--ink-700); line-height:1.6;}

.why-industry{display:grid; grid-template-columns:0.9fr 1.1fr; gap:56px; align-items:center;}

.stat-block{display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--line); border:1px solid var(--line);}

.stat-item{background:var(--navy-900); color:#fff; padding:28px 24px;}

.stat-item .n{font-family:'Montserrat',sans-serif; font-weight:800; font-size:30px; color:var(--orange-500); display:block; margin-bottom:6px;}

.stat-item .l{font-size:12.5px; color:rgba(255,255,255,0.65);}

.approach-list{display:flex; flex-direction:column;}

.approach-row{display:grid; grid-template-columns:64px 1fr; gap:24px; padding:24px 0; border-top:1px solid var(--line);}

.approach-row:last-child{border-bottom:1px solid var(--line);}

.approach-row .num{font-family:'JetBrains Mono',monospace; font-size:20px; color:var(--orange-700); font-weight:500;}

.approach-row h4{font-size:16.5px; margin-bottom:6px;}

.approach-row p{font-size:14px; color:var(--ink-700); line-height:1.6; max-width:640px;}

.industry-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.industry-card{background:var(--white); padding:28px; display:flex; align-items:center; gap:14px; transition:background .15s ease;}

.industry-card:hover{background:var(--navy-100);}

.industry-mark{width:8px; height:8px; background:var(--orange-500); transform:rotate(45deg); flex:none;}

.industry-card span{font-weight:600; font-size:15px; color:var(--navy-900);}

.cap-list{display:flex; flex-direction:column; gap:20px;}

.cap-row{display:grid; grid-template-columns:200px 1fr; gap:24px; align-items:center;}

.cap-row .name{font-weight:600; font-size:14.5px; color:var(--navy-900);}

.cap-track{height:6px; background:var(--navy-100); border-radius:4px; overflow:hidden;}

.cap-fill{height:100%; background:var(--orange-500); border-radius:4px;}

.founder-section{background:var(--navy-100);}

.founder-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:56px; align-items:start;}

.founder-photo{width:120px; height:120px; border-radius:var(--radius-md); background:var(--navy-500); background-size:cover; background-position:center top; position:relative; flex:none;}

.founder-photo::after{content:''; position:absolute; inset:0; background:linear-gradient(160deg, rgba(233,166,98,0.14), transparent 55%); border-radius:var(--radius-md);}

.founder-portrait{aspect-ratio:4/5; background:var(--navy-500); background-size:cover; background-position:center top; border-radius:var(--radius-md); position:sticky; top:96px; overflow:hidden;}

.founder-portrait::after{content:''; position:absolute; inset:0; background:linear-gradient(160deg, rgba(233,166,98,0.14), transparent 55%);}

.founder-tags{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px;}

.founder-tags span{font-family:'JetBrains Mono',monospace; font-size:11px; text-transform:uppercase; letter-spacing:0.06em; background:var(--navy-100); border:1px solid var(--line); color:var(--navy-700); padding:5px 10px; border-radius:20px;}

.founder-body h2{font-size:28px; margin-bottom:6px;}

.founder-role{font-size:14px; color:var(--ink-700); margin-bottom:20px;}

.founder-body p{font-size:15px; color:var(--ink-700); line-height:1.75; margin-bottom:16px;}

.founder-pillars{display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:24px;}

.founder-pillar{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-sm); padding:16px 18px;}

.founder-pillar h4{font-size:13.5px; margin-bottom:6px; color:var(--navy-900);}

.founder-pillar p{font-size:12.5px; color:var(--ink-700); line-height:1.5; margin:0;}

.founder-note{margin-top:24px; font-size:13px; color:var(--navy-700); background:var(--navy-100); border-left:3px solid var(--orange-500); padding:14px 18px; border-radius:0 var(--radius-sm) var(--radius-sm) 0;}

.cta-band{background:var(--navy-900); position:relative; overflow:hidden; padding:88px 0; text-align:center;}

.faq-list{display:flex; flex-direction:column; gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden;}

.faq-item{background:var(--white);}

.faq-item summary{
  padding:20px 24px; font-family:'Inter',sans-serif; font-weight:600; font-size:15px; color:var(--navy-900);
  cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:16px;
}

.faq-item summary::-webkit-details-marker{display:none;}

.faq-item summary::after{content:'+'; font-family:'JetBrains Mono',monospace; font-size:20px; color:var(--orange-700); flex:none; transition:transform .2s ease;}

.faq-item[open] summary::after{content:'\2212';}

.faq-item summary:hover{color:var(--orange-700);}

.faq-item p{padding:0 24px 22px; font-size:14px; color:var(--ink-700); line-height:1.7; max-width:680px;}

.faq-item p a{color:var(--navy-500); font-weight:600; text-decoration:underline;}

.cta-band h2{color:#fff; font-size:34px; max-width:640px; margin:0 auto 14px;}

.cta-band p{color:rgba(255,255,255,0.65); font-size:15.5px; max-width:480px; margin:0 auto 32px;}

.btn-primary{background:var(--orange-500); color:var(--navy-900); font-weight:700; font-size:13.5px; letter-spacing:0.03em; padding:14px 26px; border-radius:var(--radius-sm); text-transform:uppercase; display:inline-block; transition:transform .15s ease, background .15s ease; white-space:nowrap;}

.btn-primary:hover{background:var(--orange-300); transform:translateY(-2px);}

.btn-outline{
  border:1.5px solid rgba(255,255,255,0.4); color:#fff; font-weight:600; font-size:14px; letter-spacing:0.03em;
  padding:15px 30px; border-radius:var(--radius-sm); text-transform:uppercase; display:inline-block; transition:.15s ease;
}

.btn-outline:hover{border-color:#fff; background:rgba(255,255,255,0.06);}

footer{background:var(--navy-900); color:rgba(255,255,255,0.7); padding-top:64px;}

.footer-grid{display:grid; grid-template-columns:1.2fr 0.8fr 0.9fr 0.9fr 1fr; gap:32px; padding-bottom:40px; border-bottom:1px solid rgba(255,255,255,0.1); max-width:1240px; margin:0 auto; padding-left:32px; padding-right:32px;}

.footer-grid h4{color:#fff; font-size:13px; text-transform:uppercase; letter-spacing:0.06em; margin-bottom:18px; font-family:'JetBrains Mono',monospace; font-weight:500;}

.footer-grid ul{list-style:none; display:flex; flex-direction:column; gap:10px;}

.footer-grid a{font-size:13.5px; color:rgba(255,255,255,0.62);}

.footer-grid a:hover{color:var(--orange-500);}

.footer-bottom{display:flex; justify-content:space-between; padding:20px 32px; font-size:12px; color:rgba(255,255,255,0.4); flex-wrap:wrap; gap:12px; max-width:1240px; margin:0 auto;}

.footer-bottom a{color:rgba(255,255,255,0.6); text-decoration:underline; text-underline-offset:2px;}

.footer-bottom a:hover{color:var(--orange-500);}

.article-hero{background:var(--navy-900); color:#fff; padding:56px 0 0; position:relative; overflow:hidden;}

.article-hero-grid{position:absolute; inset:0; opacity:0.07; background-image:linear-gradient(rgba(255,255,255,0.4) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.4) 1px, transparent 1px); background-size:64px 64px;}

.article-hero .wrap{position:relative; padding-bottom:48px; max-width:840px;}

.article-hero .eyebrow{color:var(--orange-500);}

.article-hero h1{color:#fff; font-size:36px; line-height:1.25; margin-bottom:20px;}

.article-meta-row{display:flex; gap:20px; flex-wrap:wrap; font-size:13px; color:rgba(255,255,255,0.65);}

.article-meta-row b{color:#fff; font-weight:600;}

.featured-img{aspect-ratio:21/9; background:var(--navy-900); background-size:cover; background-position:center; position:relative; overflow:hidden;}

.featured-img::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.45) 47%, rgba(233,166,98,0.45) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 48px 48px, 48px 48px;}

.featured-img.has-photo::before{background-image:linear-gradient(180deg, rgba(15,42,78,0.15) 0%, rgba(15,42,78,0.35) 100%);}

.article-layout{display:grid; grid-template-columns:80px 1fr 240px; gap:40px; padding:64px 0; align-items:start; max-width:1080px; margin:0 auto; padding-left:32px; padding-right:32px;}

.share-col{position:sticky; top:96px; display:flex; flex-direction:column; gap:10px;}

.share-label{font-family:'JetBrains Mono',monospace; font-size:10.5px; text-transform:uppercase; letter-spacing:0.06em; color:var(--ink-500); margin-bottom:6px;}

.share-btn{width:40px; height:40px; border-radius:50%; border:1px solid var(--line); background:var(--white); display:flex; align-items:center; justify-content:center; font-size:12px; font-weight:700; color:var(--navy-700); transition:.15s ease;}

.share-btn:hover{background:var(--navy-900); color:#fff; border-color:var(--navy-900);}

.article-body p{font-size:16.5px; color:var(--ink-900); line-height:1.85; margin-bottom:22px; max-width:640px;}

.article-h3{font-family:'Montserrat',sans-serif; font-weight:700; font-size:22px; color:var(--navy-900); max-width:640px; margin:38px 0 14px; line-height:1.3;}

.article-h3:first-child{margin-top:0;}

.article-list{max-width:640px; margin:0 0 22px; padding-left:22px;}

.article-list li{font-size:16.5px; color:var(--ink-900); line-height:1.75; margin-bottom:8px;}

.article-quote{
  border-left:3px solid var(--orange-500); padding:2px 0 2px 22px; margin:26px 0;
  font-size:19px; font-weight:700; color:var(--navy-900); line-height:1.5; max-width:600px;
}

.sidebar{display:flex; flex-direction:column; gap:24px;}

.sidebar-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); padding:22px;}

.sidebar-card h4{font-family:'JetBrains Mono',monospace; font-size:11px; text-transform:uppercase; letter-spacing:0.06em; color:var(--orange-700); margin-bottom:14px;}

.sidebar-card p{font-size:13px; color:var(--ink-700); line-height:1.6; margin-bottom:14px;}

.related-section{background:var(--white); border-top:1px solid var(--line); padding:64px 0;}

.related-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:24px;}

.related-card{border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; display:block; transition:transform .18s ease, box-shadow .18s ease;}

.related-card:hover{transform:translateY(-4px); box-shadow:var(--sh);}

.related-img{aspect-ratio:16/9; background:var(--navy-100); background-size:cover; background-position:center; position:relative;}

.related-img::after{content:''; position:absolute; inset:0; background:repeating-linear-gradient(-45deg, var(--navy-300) 0 2px, transparent 2px 14px); opacity:0.3;}

.related-img.has-photo::after{background:linear-gradient(180deg, rgba(15,42,78,0.05) 0%, rgba(15,42,78,0.25) 100%); opacity:1;}

.related-body{padding:18px 20px;}

.related-cat{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:8px;}

.related-body h4{font-size:15px; line-height:1.4;}

.path-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:20px; margin-bottom:56px;}

.path-card{background:var(--white); border:2px solid var(--line); border-radius:var(--radius-md); padding:28px 26px; cursor:pointer; transition:.18s ease; text-align:left;}

.path-card:hover{border-color:var(--navy-300);}

.path-card.selected{border-color:var(--orange-500); background:var(--orange-100);}

.path-card .idx{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-700); margin-bottom:14px; display:block;}

.path-card h3{font-size:18px; margin-bottom:10px;}

.path-card p{font-size:13px; color:var(--ink-700); line-height:1.55; margin-bottom:14px;}

.path-card ul{list-style:none; display:flex; flex-direction:column; gap:6px;}

.path-card li{font-size:12px; color:var(--ink-700); display:flex; align-items:center; gap:8px;}

.path-card li::before{content:''; width:5px; height:5px; background:var(--navy-500); flex:none; border-radius:1px; transform:rotate(45deg);}

/* Compact multi-select checkbox cards (Find a Professional, For Companies) */
.choice-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-bottom:8px;}

.choice-card{position:relative; background:var(--white); border:2px solid var(--line); border-radius:var(--radius-sm); padding:16px 18px; cursor:pointer; transition:.15s ease; display:flex; align-items:center; gap:10px; font-size:14px; font-weight:600; color:var(--ink-900);}

.choice-card:hover{border-color:var(--navy-300);}

.choice-card.selected{border-color:var(--orange-500); background:var(--orange-100);}

.choice-card input{position:absolute; opacity:0; pointer-events:none;}

.choice-card .box{width:18px; height:18px; border:2px solid var(--navy-300); border-radius:4px; flex:none; position:relative; transition:.15s ease;}

.choice-card.selected .box{background:var(--orange-500); border-color:var(--orange-500);}

.choice-card.selected .box::after{content:''; position:absolute; left:5px; top:1px; width:5px; height:9px; border:solid #fff; border-width:0 2px 2px 0; transform:rotate(45deg);}

.choice-card .other-input{position:absolute; opacity:0; pointer-events:none; width:0; height:0;}

.choice-card.other-selected input[type="text"]{position:static; opacity:1; pointer-events:auto; width:auto; height:auto; flex:1; border:none; border-bottom:1px solid var(--navy-300); background:transparent; font-weight:600; font-size:14px; font-family:inherit; color:var(--ink-900); padding:2px 0;}

@media (max-width:860px){
  .choice-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:560px){
  .choice-grid{grid-template-columns:1fr;}
}

.path-radio{display:none;}

.contact-layout{display:grid; grid-template-columns:1.3fr 0.7fr; gap:48px; align-items:start;}

.form-panel{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); padding:36px 40px;}

.form-panel h3{font-size:20px; margin-bottom:6px;}

.form-panel .form-sub{font-size:13.5px; color:var(--ink-700); margin-bottom:28px;}

.team-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}

.team-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden;}

.team-photo{aspect-ratio:4/3; background:var(--navy-500); background-size:cover; background-position:center top; position:relative;}

.team-photo::after{content:''; position:absolute; inset:0; background:linear-gradient(160deg, rgba(233,166,98,0.14), transparent 55%);}

.team-body{padding:20px 22px 22px;}

.team-role{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:8px;}

.team-body h3{font-size:16.5px; margin-bottom:8px; color:var(--navy-900);}

.team-body p{font-size:13px; color:var(--ink-700); line-height:1.55; margin-bottom:16px;}

.team-photo-fallback{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:'Montserrat',sans-serif; font-weight:800; font-size:30px; color:rgba(255,255,255,0.85); letter-spacing:0.02em;
}

.team-card-foot{display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:14px; border-top:1px solid var(--line);}

.team-fee{font-family:'JetBrains Mono',monospace; font-size:11.5px; font-weight:600; color:var(--orange-700); background:var(--orange-100); padding:5px 10px; border-radius:20px; white-space:nowrap;}

.team-book-btn{background:none; border:none; padding:0; font-size:12.5px; font-weight:700; color:var(--navy-500); cursor:pointer;}

.team-book-btn:hover{color:var(--orange-700);}

.recommend-banner{background:var(--orange-100); border:1px solid var(--orange-300); border-radius:var(--radius-sm); padding:16px 20px; font-size:13.5px; color:var(--navy-900); margin-bottom:32px;}

.field-group{margin-bottom:20px;}

.field-row{display:grid; grid-template-columns:1fr 1fr; gap:16px;}

label{display:block; font-size:12.5px; font-weight:600; color:var(--navy-900); margin-bottom:8px;}

input, select, textarea{
  width:100%; border:1px solid var(--line); border-radius:var(--radius-sm); padding:12px 14px;
  font-family:'Inter',sans-serif; font-size:14px; color:var(--ink-900); background:var(--white);
  transition:border-color .15s ease, box-shadow .15s ease;
}

input:focus, select:focus, textarea:focus{
  outline:none; border-color:var(--navy-500); box-shadow:0 0 0 3px rgba(27,67,123,0.12);
}

textarea{resize:vertical; min-height:100px;}

.required::after{content:' *'; color:var(--orange-700);}

.dynamic-fields{display:none; flex-direction:column; gap:20px; padding-top:4px; border-top:1px solid var(--line); margin-top:4px; padding-top:20px;}

.dynamic-fields.active{display:flex;}

.submit-btn{
  background:var(--navy-900); color:#fff; font-weight:700; font-size:14px; letter-spacing:0.03em;
  padding:16px 32px; border-radius:var(--radius-sm); text-transform:uppercase; border:none; cursor:pointer;
  width:100%; margin-top:8px; transition:.15s ease;
}

.submit-btn:hover{background:var(--orange-500); color:var(--navy-900);}

.form-note{font-size:11.5px; color:var(--ink-500); margin-top:14px; text-align:center; line-height:1.5;}

.success-panel{display:none; text-align:center; padding:40px 20px;}

.success-panel.active{display:block;}

.success-panel .mark{width:48px; height:48px; background:var(--success); border-radius:50%; color:#fff; display:flex; align-items:center; justify-content:center; font-size:22px; margin:0 auto 20px;}

.success-panel h3{font-size:20px; margin-bottom:10px;}

.success-panel p{font-size:14px; color:var(--ink-700); max-width:380px; margin:0 auto;}

.success-panel .steps-row{max-width:900px; margin:28px auto 0;}

.success-panel .steps-row p{max-width:none; margin:0;}

.info-card{background:var(--navy-900); color:#fff; border-radius:var(--radius-md); padding:28px;}

.info-card .label{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-300); text-transform:uppercase; letter-spacing:0.08em; margin-bottom:16px;}

.info-row{display:flex; flex-direction:column; gap:4px; padding:14px 0; border-top:1px solid rgba(255,255,255,0.1);}

.info-row:first-of-type{border-top:none; padding-top:0;}

.info-row .k{font-size:11.5px; color:rgba(255,255,255,0.55);}

.info-row .v{font-size:14.5px; font-weight:600;}

.panel-light{background:var(--navy-100); border-radius:var(--radius-md); padding:24px;}

.panel-light h4{font-size:15px; margin-bottom:10px;}

.panel-light p{font-size:13px; color:var(--ink-700); line-height:1.6;}

img{display:block; max-width:100%;}

.route{position:relative;}

.route svg{display:block; width:100%; height:auto;}

.nav-links a:hover{color:#fff;}

.nav-links a:hover::after{width:100%;}

.hamburger span{width:26px; height:2px; background:#fff;}

.hero{
  background:var(--navy-900); color:#fff; position:relative; overflow:hidden;
  padding:96px 0 0;
}

.hero-grid{
  position:absolute; inset:0; opacity:0.08; z-index:1;
  background-image:linear-gradient(rgba(255,255,255,0.4) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.4) 1px, transparent 1px);
  background-size:64px 64px;
}

.hero-slider{position:absolute; inset:0; z-index:0;}

.hero-slide{
  position:absolute; inset:0; background-size:cover; background-position:center;
  opacity:0; transition:opacity 1.4s ease;
}

.hero-slide.active{opacity:1;}

.hero-overlay{
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,42,78,0.90) 0%, rgba(15,42,78,0.84) 45%, rgba(15,42,78,0.94) 100%);
}

.hero-slider-controls{
  position:relative; z-index:2; display:flex; align-items:center; gap:16px; padding-bottom:32px; margin-top:40px;
}

.hero-nav-btn{
  width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.28);
  color:#fff; font-size:18px; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center;
  transition:background .15s ease, border-color .15s ease, color .15s ease; flex:none;
}

.hero-nav-btn:hover{background:var(--orange-500); border-color:var(--orange-500); color:var(--navy-900);}

.hero-dots{display:flex; align-items:center; gap:8px;}

.hero-dot{width:8px; height:8px; border-radius:4px; background:rgba(255,255,255,0.35); border:none; cursor:pointer; padding:0; transition:.2s ease;}

.hero-dot.active{background:var(--orange-500); width:22px;}

.hero-inner{position:relative; display:grid; grid-template-columns:1.15fr 0.85fr; gap:48px; align-items:end; padding-bottom:72px;}

.hero-eyebrow{
  font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.14em; text-transform:uppercase;
  color:var(--orange-500); margin-bottom:24px; display:flex; align-items:center; gap:10px;
}

.hero h1{font-size:56px; color:#fff; max-width:640px; font-weight:800;}

.hero p{font-size:18px; color:rgba(255,255,255,0.72); max-width:520px; margin-top:24px; line-height:1.6;}

.hero-ctas{display:flex; gap:16px; margin-top:40px; flex-wrap:wrap;}

.hero-panel{
  background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.14); border-radius:var(--radius-md);
  padding:28px; backdrop-filter:blur(2px);
}

.hero-panel .label{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-300); text-transform:uppercase; letter-spacing:0.1em; margin-bottom:14px;}

.hero-stat-row{display:flex; justify-content:space-between; padding:14px 0; border-top:1px solid rgba(255,255,255,0.1);}

.hero-stat-row:first-of-type{border-top:none;}

.hero-stat-row .n{font-family:'Montserrat',sans-serif; font-weight:700; font-size:22px; color:#fff;}

.hero-stat-row .l{font-size:12px; color:rgba(255,255,255,0.55); align-self:center; text-align:right;}

.strip{background:var(--navy-700); border-top:1px solid rgba(255,255,255,0.08);}

.marquee-section{background:var(--white); border-bottom:1px solid var(--line); padding:40px 0;}

.marquee-label{
  font-family:'JetBrains Mono',monospace; font-size:11px; font-weight:600; text-transform:uppercase;
  letter-spacing:0.1em; color:var(--ink-500); margin-bottom:16px;
}

.marquee-track{width:100%; overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent); mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);}

.marquee-content{display:flex; align-items:center; gap:48px; width:max-content; animation:marquee-scroll 32s linear infinite;}

.marquee-content.marquee-reverse{animation-name:marquee-scroll-reverse;}

.marquee-content span{
  font-family:'Montserrat',sans-serif; font-weight:700; font-size:17px; color:var(--navy-700);
  white-space:nowrap; opacity:0.7; flex:none;
}

@keyframes marquee-scroll{
  from{transform:translateX(0);}
  to{transform:translateX(-50%);}
}

@keyframes marquee-scroll-reverse{
  from{transform:translateX(-50%);}
  to{transform:translateX(0);}
}

.strip-inner{display:flex; overflow-x:auto; max-width:1240px; margin:0 auto;}

.strip-item{
  flex:1; min-width:150px; text-align:center; padding:20px 12px; border-left:1px solid rgba(255,255,255,0.1);
  font-family:'JetBrains Mono',monospace; font-size:12px; letter-spacing:0.08em; text-transform:uppercase; color:rgba(255,255,255,0.8);
}

.strip-item:first-child{border-left:none;}

.serve-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.serve-card{background:var(--white); padding:32px 28px; transition:background .15s ease;}

.serve-card:hover{background:var(--navy-100);}

.serve-num{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-700); margin-bottom:16px;}

.serve-card h3{font-size:18px; margin-bottom:8px;}

.serve-card p{font-size:14px; color:var(--ink-700); line-height:1.55;}

.pillar{display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:center; padding:96px 0;}

.pillar:nth-of-type(even) .pillar-visual{order:2;}

.pillar-visual{
  aspect-ratio:4/3; background:var(--navy-900); background-size:cover; background-position:center; border-radius:var(--radius-md); position:relative; overflow:hidden;
  display:flex; align-items:flex-end; padding:24px;
}

.pillar-visual .tag{
  font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-300); letter-spacing:0.08em; text-transform:uppercase;
  background:rgba(0,0,0,0.35); padding:8px 14px; border-radius:var(--radius-sm); border:1px solid rgba(255,255,255,0.15);
}

.pillar-visual::before{
  content:''; position:absolute; inset:0;
  background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.5) 47%, rgba(233,166,98,0.5) 48%, transparent 49%),
                    linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px);
  background-size:100% 100%, 40px 40px, 40px 40px;
}

.pillar-visual.has-photo::before{background-image:linear-gradient(0deg, rgba(15,42,78,0.75) 0%, rgba(15,42,78,0.15) 55%, rgba(15,42,78,0.05) 100%);}

.pillar-body h3{font-size:30px; margin-bottom:16px;}

.pillar-body p{color:var(--ink-700); font-size:15.5px; line-height:1.7; margin-bottom:24px;}

.pillar-list{list-style:none; display:flex; flex-direction:column; gap:12px; margin-bottom:28px;}

.pillar-list li{display:flex; align-items:center; gap:12px; font-size:14.5px; color:var(--ink-900); font-weight:500;}

.pillar-list li::before{content:''; width:8px; height:8px; background:var(--orange-500); flex:none; border-radius:1px; transform:rotate(45deg);}

.text-link{font-weight:700; font-size:14px; color:var(--navy-500); display:inline-flex; align-items:center; gap:8px;}

.text-link:hover{color:var(--orange-700);}

.why-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:32px;}

.why-card{padding:28px 0; border-top:2px solid var(--navy-900);}

.why-card .idx{font-family:'JetBrains Mono',monospace; color:var(--orange-700); font-size:13px; margin-bottom:12px;}

.why-card h3{font-size:18px; margin-bottom:10px;}

.why-card p{font-size:14px; color:var(--ink-700); line-height:1.6;}

.proj-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}

.proj-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; transition:transform .18s ease, box-shadow .18s ease; display:block;}

.proj-card:hover{transform:translateY(-4px); box-shadow:var(--sh);}

.proj-img{aspect-ratio:16/10; background:var(--navy-100); position:relative;}

.proj-img::after{content:''; position:absolute; inset:0; background:repeating-linear-gradient(-45deg, var(--navy-300) 0 2px, transparent 2px 14px); opacity:0.3;}

.proj-tag{position:absolute; top:14px; left:14px; background:var(--orange-100); color:var(--orange-700); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; padding:5px 10px; border-radius:var(--radius-sm); z-index:1;}

.proj-body{padding:20px 22px 24px;}

.proj-body h3{font-size:17px; margin-bottom:8px;}

.proj-body p{font-size:13.5px; color:var(--ink-700); line-height:1.55; margin-bottom:14px;}

.founder{background:var(--navy-100); border-radius:var(--radius-md); padding:48px; display:grid; grid-template-columns:auto 1fr auto; gap:40px; align-items:center;}

.founder h3{font-size:22px; margin-bottom:4px;}

.founder p{color:var(--ink-700); font-size:14px; max-width:480px;}

.insight-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}

.insight-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; transition:transform .18s ease, box-shadow .18s ease; display:block;}

.insight-cat{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:10px;}

.insight-card h3{font-size:15.5px; line-height:1.4; margin-bottom:10px; font-family:'Inter',sans-serif; font-weight:600; color:var(--navy-900);}

.insight-meta{font-size:12px; color:var(--ink-500); display:flex; justify-content:space-between; padding-top:12px; border-top:1px solid var(--line);}

.cta-band .hero-grid{opacity:0.05;}

.mobile-cta{display:none; position:sticky; bottom:0; z-index:40; background:var(--orange-500); text-align:center; padding:14px; font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:0.04em; color:var(--navy-900);}

.featured{display:grid; grid-template-columns:1.1fr 0.9fr; background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; margin-bottom:56px;}

.featured-card-img{background:var(--navy-900); background-size:cover; background-position:center; position:relative; overflow:hidden; min-height:280px;}

.featured-card-img::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.45) 47%, rgba(233,166,98,0.45) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 40px 40px, 40px 40px;}

.featured-card-img.has-photo::before{background-image:linear-gradient(180deg, rgba(15,42,78,0.1) 0%, rgba(15,42,78,0.3) 100%);}

.featured-body{padding:36px 40px; display:flex; flex-direction:column; justify-content:center;}

.featured-cat{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:12px;}

.featured-body h2{font-size:26px; margin-bottom:14px; line-height:1.25;}

.featured-body p{font-size:14.5px; color:var(--ink-700); line-height:1.65; margin-bottom:18px;}

.featured-meta{font-size:12.5px; color:var(--ink-500);}

.filter-bar{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:36px;}

.filter-chip{font-size:12.5px; font-weight:600; padding:9px 18px; border-radius:20px; border:1px solid var(--line); background:var(--white); color:var(--ink-700); cursor:pointer; transition:.15s ease;}

.filter-chip.active{background:var(--navy-900); color:#fff; border-color:var(--navy-900);}

.filter-chip:hover:not(.active){border-color:var(--navy-500); color:var(--navy-700);}

.insight-card:hover{transform:translateY(-4px); box-shadow:var(--sh);}

.insight-img{aspect-ratio:16/10; background:var(--navy-100); background-size:cover; background-position:center; position:relative;}

.insight-img::after{content:''; position:absolute; inset:0; background:repeating-linear-gradient(-45deg, var(--navy-300) 0 2px, transparent 2px 14px); opacity:0.3;}

.insight-img.has-photo::after{background:linear-gradient(180deg, rgba(15,42,78,0.05) 0%, rgba(15,42,78,0.25) 100%); opacity:1;}

.insight-tag{position:absolute; top:14px; left:14px; background:var(--orange-100); color:var(--orange-700); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; padding:5px 10px; border-radius:var(--radius-sm); z-index:1;}

.insight-body{padding:20px 22px 22px;}

.insight-body h3{font-size:16px; line-height:1.4; margin-bottom:12px;}

.cap-block{padding:80px 0; border-bottom:1px solid var(--line);}

.cap-block:last-of-type{border-bottom:none;}

.cap-head{display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:40px; flex-wrap:wrap;}

.cap-head .num{font-family:'JetBrains Mono',monospace; font-size:13px; color:var(--orange-700); margin-bottom:10px; display:block;}

.cap-head h3{font-size:28px; max-width:520px;}

.cap-head p{color:var(--ink-700); font-size:14.5px; max-width:340px;}

.cap-items{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.cap-item{background:var(--white); padding:26px 22px; transition:background .15s ease;}

.cap-item:hover{background:var(--navy-100);}

.cap-item .mark{width:8px; height:8px; background:var(--orange-500); transform:rotate(45deg); margin-bottom:16px;}

.cap-item h4{font-size:15.5px; margin-bottom:8px;}

.cap-item p{font-size:13px; color:var(--ink-700); line-height:1.55;}

.pl-grid{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start;}

.pl-visual{aspect-ratio:4/3; background:var(--navy-900); background-size:cover; background-position:center; border-radius:var(--radius-md); position:relative; overflow:hidden; display:flex; align-items:flex-end; padding:24px;}

.pl-visual::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.5) 47%, rgba(233,166,98,0.5) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 40px 40px, 40px 40px;}

.pl-visual.has-photo::before{background-image:linear-gradient(0deg, rgba(15,42,78,0.75) 0%, rgba(15,42,78,0.15) 55%, rgba(15,42,78,0.05) 100%);}

.pl-visual .tag{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-300); letter-spacing:0.08em; text-transform:uppercase; background:rgba(0,0,0,0.35); padding:8px 14px; border-radius:var(--radius-sm); border:1px solid rgba(255,255,255,0.15); position:relative; z-index:1;}

.pl-body p{color:var(--ink-700); font-size:15px; line-height:1.75; margin-bottom:24px;}

.product-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; padding-top:32px;}

.product-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; display:flex; flex-direction:column;}

.product-img{aspect-ratio:4/3; background:var(--navy-100); background-size:cover; background-position:center; position:relative;}

.product-img::after{content:''; position:absolute; inset:0; background:repeating-linear-gradient(-45deg, var(--navy-300) 0 2px, transparent 2px 14px); opacity:0.25;}

.product-img.has-photo::after{display:none;}

.avail-tag{position:absolute; top:12px; left:12px; z-index:1; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:0.04em; padding:5px 10px; border-radius:20px;}

.avail-tag.in-stock{background:#E4F0E8; color:#2F7A5E;}

.avail-tag.order{background:var(--orange-100); color:var(--orange-700);}

.product-body{padding:20px 22px 22px; display:flex; flex-direction:column; flex:1;}

.product-cat{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:8px;}

.product-body h3{font-size:16.5px; margin-bottom:6px;}

.product-brand{font-size:12px; color:var(--ink-500); margin-bottom:12px;}

.product-desc{font-size:13.5px; color:var(--ink-700); line-height:1.55; margin-bottom:14px;}

.spec-toggle{font-size:12.5px; font-weight:600; color:var(--navy-500); cursor:pointer; margin-bottom:6px; list-style:none;}

.spec-toggle::-webkit-details-marker{display:none;}

.spec-toggle:hover{color:var(--orange-700);}

.spec-table{width:100%; font-size:12.5px; margin:10px 0 4px; border-top:1px solid var(--line);}

.spec-table tr{border-bottom:1px solid var(--line);}

.spec-table td{padding:8px 0; color:var(--ink-700);}

.spec-table td:first-child{font-weight:600; color:var(--navy-700); width:42%;}

.product-foot{margin-top:auto; padding-top:16px; border-top:1px solid var(--line); display:flex; align-items:center; justify-content:space-between; gap:12px;}

.moq{font-size:12px; color:var(--ink-500);}

.btn-quote{background:var(--navy-900); color:#fff; font-weight:700; font-size:12px; letter-spacing:0.03em; padding:10px 18px; border-radius:var(--radius-sm); text-transform:uppercase; white-space:nowrap; transition:.15s ease; border:none; cursor:pointer; font-family:'Inter',sans-serif; display:inline-block;}

.btn-quote:hover{background:var(--orange-500); color:var(--navy-900);}

.quote-add-btn-done{background:var(--success) !important; color:#fff !important;}

.quote-list-pill{
  display:none; align-items:center; gap:8px; position:fixed; bottom:24px; right:24px; z-index:80;
  background:var(--navy-900); color:#fff; border:none; border-radius:30px; padding:14px 22px;
  font-family:'Inter',sans-serif; font-weight:700; font-size:13.5px; cursor:pointer; box-shadow:0 8px 24px rgba(15,42,78,0.3);
  transition:transform .15s ease, background .15s ease;
}

.quote-list-pill:hover{background:var(--orange-500); color:var(--navy-900); transform:translateY(-2px);}

.quote-list-overlay{
  position:fixed; inset:0; background:rgba(15,42,78,0.4); opacity:0; visibility:hidden;
  transition:opacity .2s ease, visibility .2s ease; z-index:89;
}

.quote-list-overlay.open{opacity:1; visibility:visible;}

.quote-list-panel{
  position:fixed; top:0; right:0; bottom:0; width:380px; max-width:90vw; background:var(--white);
  box-shadow:-8px 0 32px rgba(15,42,78,0.18); z-index:90; display:flex; flex-direction:column;
  transform:translateX(100%); transition:transform .25s ease;
}

.quote-list-panel.open{transform:translateX(0);}

.quote-list-panel-header{display:flex; align-items:center; justify-content:space-between; padding:24px 24px 16px; border-bottom:1px solid var(--line);}

.quote-list-panel-header h4{font-size:18px; color:var(--navy-900); font-family:'Montserrat',sans-serif; font-weight:700;}

.quote-list-close{background:none; border:none; font-size:24px; line-height:1; color:var(--ink-500); cursor:pointer; padding:0;}

.quote-list-close:hover{color:var(--navy-900);}

.quote-list-items{flex:1; overflow-y:auto; padding:16px 24px;}

.quote-list-empty{font-size:13.5px; color:var(--ink-700); line-height:1.6;}

.quote-list-item{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:14px 0; border-bottom:1px solid var(--line);}

.quote-list-item-cat{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--orange-700); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:3px;}

.quote-list-item-name{font-size:14px; font-weight:600; color:var(--navy-900);}

.quote-list-remove{background:none; border:none; font-size:20px; line-height:1; color:var(--ink-500); cursor:pointer; padding:2px 4px; flex:none;}

.quote-list-remove:hover{color:var(--error);}

.quote-list-panel-footer{padding:20px 24px 24px; border-top:1px solid var(--line); display:flex; flex-direction:column; gap:12px;}

.quote-list-submit{text-align:center; transition:opacity .15s ease;}

.quote-list-clear{background:none; border:none; font-size:12.5px; color:var(--ink-500); cursor:pointer; text-decoration:underline; align-self:center;}

.quote-list-clear:hover{color:var(--navy-900);}

.quote-list-form-summary{background:var(--orange-100); border:1px solid var(--orange-300); border-radius:var(--radius-sm); padding:16px 18px; margin-bottom:20px;}

.quote-list-form-summary h5{font-size:13px; font-weight:700; color:var(--navy-900); margin-bottom:8px;}

.quote-list-form-summary ul{margin:0; padding-left:18px;}

.quote-list-form-summary li{font-size:13px; color:var(--ink-900); line-height:1.6;}

.notice-band{background:var(--navy-100); border-radius:var(--radius-md); padding:32px 36px; display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap; margin-top:56px;}

.material-line-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden; margin-top:32px;}

.material-line{background:var(--white); padding:22px 26px; display:flex; align-items:center; justify-content:space-between; gap:16px; transition:background .15s ease;}

.material-line:hover{background:var(--navy-100);}

.material-line-name{font-size:15px; font-weight:600; color:var(--navy-900);}

.material-line-cta{font-size:12.5px; font-weight:700; color:var(--navy-500); white-space:nowrap;}

.material-line:hover .material-line-cta{color:var(--orange-700);}

.notice-band h4{font-size:16px; margin-bottom:6px;}

.notice-band p{font-size:13.5px; color:var(--ink-700); max-width:480px;}

.hero-note{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-300); background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.15); border-radius:var(--radius-sm); padding:14px 18px; max-width:260px; line-height:1.6;}

.cat-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.cat-card{background:var(--white); padding:28px 24px; transition:background .15s ease; display:flex; flex-direction:column; gap:14px;}

.cat-card:hover{background:var(--navy-100);}

.cat-thumb{aspect-ratio:16/10; background:var(--navy-900); background-size:cover; background-position:center; border-radius:var(--radius-sm); position:relative; overflow:hidden;}

.cat-thumb::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.45) 47%, rgba(233,166,98,0.45) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 24px 24px, 24px 24px;}

.cat-thumb.has-photo::before{background-image:linear-gradient(0deg, rgba(15,42,78,0.75) 0%, rgba(15,42,78,0.15) 55%, rgba(15,42,78,0.05) 100%);}

.cat-count{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--orange-300); position:absolute; top:10px; left:10px; background:rgba(0,0,0,0.35); padding:4px 8px; border-radius:3px; z-index:1;}

.cat-card h3{font-size:16px;}

.cat-card p{font-size:13px; color:var(--ink-700); line-height:1.5;}

.cat-link{font-size:12.5px; font-weight:700; color:var(--navy-500); margin-top:auto;}

.cat-card:hover .cat-link{color:var(--orange-700);}

.steps-row{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}

.step{border-top:2px solid var(--navy-900); padding-top:18px;}

.step .num{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-700); margin-bottom:10px; display:block;}

.step h4{font-size:15px; margin-bottom:6px;}

.step p{font-size:13px; color:var(--ink-700); line-height:1.55;}

.page-hero .context-line{margin-top:24px; font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-300); display:flex; align-items:center; gap:10px; flex-wrap:wrap;}

.page-hero .context-line span{opacity:0.5;}

.pillar-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.pillar-card{background:var(--white); padding:32px 26px;}

.pillar-card .idx{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-700); margin-bottom:16px; display:block;}

.pillar-card h3{font-size:18px; margin-bottom:12px;}

.pillar-card p{font-size:13.5px; color:var(--ink-700); line-height:1.6; margin-bottom:16px;}

.media-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}

.media-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); overflow:hidden;}

.media-img{aspect-ratio:16/10; background:var(--navy-900); position:relative; overflow:hidden;}

.media-img::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.45) 47%, rgba(233,166,98,0.45) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 40px 40px, 40px 40px;}

.media-type{position:absolute; top:14px; left:14px; background:var(--orange-100); color:var(--orange-700); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:0.05em; padding:5px 10px; border-radius:var(--radius-sm); z-index:1;}

.media-body{padding:18px 20px 20px;}

.media-outlet{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--ink-500); text-transform:uppercase; letter-spacing:0.05em; margin-bottom:8px;}

.media-body h4{font-size:15px; line-height:1.4; margin-bottom:8px;}

.media-body p{font-size:13px; color:var(--ink-700); line-height:1.55; margin-bottom:10px;}

.media-date{font-size:11.5px; color:var(--ink-500);}

.bridge{background:var(--navy-100); border-radius:var(--radius-md); padding:44px 48px; display:flex; justify-content:space-between; align-items:center; gap:32px; flex-wrap:wrap;}

.bridge-copy h3{font-size:22px; margin-bottom:10px;}

.bridge-copy p{font-size:14px; color:var(--ink-700); max-width:460px; line-height:1.6;}

.btn-outline-navy{border:1.5px solid var(--navy-500); color:var(--navy-700); font-weight:700; font-size:13px; letter-spacing:0.03em; padding:14px 26px; border-radius:var(--radius-sm); text-transform:uppercase; display:inline-block; white-space:nowrap; transition:.15s ease;}

.btn-outline-navy:hover{background:var(--navy-900); color:#fff; border-color:var(--navy-900);}

.page-hero .eyebrow{color:var(--orange-500);}

.hero-meta-row{display:flex; gap:24px; flex-wrap:wrap; margin-top:20px;}

.hero-meta-row div{font-size:13px; color:rgba(255,255,255,0.65);}

.hero-meta-row b{display:block; color:#fff; font-size:14.5px; font-weight:600; margin-bottom:2px;}

.proj-visual{aspect-ratio:21/9; background:var(--navy-900); position:relative; overflow:hidden;}

.proj-visual::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.45) 47%, rgba(233,166,98,0.45) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 48px 48px, 48px 48px;}

.detail-grid{display:grid; grid-template-columns:1.3fr 0.7fr; gap:56px; align-items:start;}

.detail-body h2{font-size:24px; margin-bottom:14px;}

.detail-body p{font-size:15px; color:var(--ink-700); line-height:1.75; margin-bottom:16px;}

.outcome-panel{background:var(--navy-100); border-radius:var(--radius-md); padding:24px 28px; margin-top:28px; display:flex; align-items:center; gap:20px;}

.outcome-panel .n{font-family:'Montserrat',sans-serif; font-weight:800; font-size:30px; color:var(--orange-700);}

.outcome-panel .txt{font-size:13.5px; color:var(--navy-900); font-weight:600; line-height:1.4;}

.outcome-panel .label{font-family:'JetBrains Mono',monospace; font-size:10.5px; color:var(--navy-700); text-transform:uppercase; letter-spacing:0.06em; margin-bottom:4px;}

.spec-panel{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); padding:28px;}

.spec-panel h4{font-family:'JetBrains Mono',monospace; font-size:11px; text-transform:uppercase; letter-spacing:0.08em; color:var(--orange-700); margin-bottom:18px;}

.spec-row{padding:14px 0; border-top:1px solid var(--line);}

.spec-row:first-of-type{border-top:none;}

.spec-row .k{font-size:11.5px; color:var(--ink-500); text-transform:uppercase; letter-spacing:0.04em; margin-bottom:6px;}

.spec-row .v{font-size:14px; color:var(--navy-900); font-weight:600; line-height:1.5;}

.tag-list{display:flex; flex-wrap:wrap; gap:6px;}

.tag-list span{font-size:11.5px; background:var(--orange-100); color:var(--orange-700); padding:4px 10px; border-radius:20px; font-weight:600;}

.related{border-top:1px solid var(--line); padding-top:40px; margin-top:16px;}

.proj-meta{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--ink-500); margin-bottom:10px;}

.proj-stat{display:flex; align-items:baseline; gap:8px; padding-top:12px; border-top:1px solid var(--line);}

.proj-stat .n{font-family:'Montserrat',sans-serif; font-weight:800; font-size:18px; color:var(--orange-700);}

.proj-stat .l{font-size:11.5px; color:var(--ink-500);}

.empty-state{text-align:center; padding:64px 20px; color:var(--ink-500); font-size:14px; display:none;}

.jump-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--line); border:1px solid var(--line);}

.jump-card{background:var(--white); padding:24px 20px; text-align:left; transition:background .15s ease;}

.jump-card:hover{background:var(--navy-100);}

.jump-card .num{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-700); margin-bottom:10px; display:block;}

.jump-card span{font-weight:600; font-size:13.5px; color:var(--navy-900); line-height:1.35; display:block;}

.service-block{display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; padding:80px 0; border-bottom:1px solid var(--line);}

.service-block:last-of-type{border-bottom:none;}

.service-block:nth-of-type(even) .service-visual{order:2;}

.service-visual{aspect-ratio:4/3; background:var(--navy-900); background-size:cover; background-position:center; border-radius:var(--radius-md); position:relative; overflow:hidden; display:flex; align-items:flex-end; padding:24px;}

.service-visual::before{content:''; position:absolute; inset:0; background-image:linear-gradient(135deg, transparent 46%, rgba(233,166,98,0.5) 47%, rgba(233,166,98,0.5) 48%, transparent 49%), linear-gradient(rgba(255,255,255,0.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.06) 1px, transparent 1px); background-size:100% 100%, 40px 40px, 40px 40px;}

.service-visual.has-photo::before{background-image:linear-gradient(0deg, rgba(15,42,78,0.75) 0%, rgba(15,42,78,0.15) 55%, rgba(15,42,78,0.05) 100%);}

.service-visual .tag{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--orange-300); letter-spacing:0.08em; text-transform:uppercase; background:rgba(0,0,0,0.35); padding:8px 14px; border-radius:var(--radius-sm); border:1px solid rgba(255,255,255,0.15); position:relative; z-index:1;}

.service-body .num{font-family:'JetBrains Mono',monospace; font-size:12px; color:var(--orange-700); margin-bottom:14px; display:block;}

.service-body h3{font-size:28px; margin-bottom:14px;}

.service-body > p{color:var(--ink-700); font-size:15px; line-height:1.7; margin-bottom:22px;}

.service-list{list-style:none; display:flex; flex-direction:column; gap:10px; margin-bottom:24px;}

.service-list li{display:flex; align-items:center; gap:12px; font-size:14px; color:var(--ink-900); font-weight:500;}

.service-list li::before{content:''; width:8px; height:8px; background:var(--orange-500); flex:none; border-radius:1px; transform:rotate(45deg);}

.industries-tag{font-size:12.5px; color:var(--ink-500); margin-bottom:20px;}

.industries-tag b{color:var(--navy-700); font-weight:600;}

.secondary-divider{background:var(--navy-100); padding:56px 0 0;}

.secondary-divider .divider-inner{text-align:center; max-width:640px; margin:0 auto;}

.secondary-divider .eyebrow{justify-content:center;}

.secondary-divider h2{font-size:24px; margin-bottom:10px;}

.secondary-divider p{color:var(--ink-700); font-size:14px; line-height:1.6;}

.secondary-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:16px; padding:40px 0 64px;}

.secondary-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-sm); padding:22px 18px;}

.secondary-card .idx{font-family:'JetBrains Mono',monospace; font-size:11px; color:var(--navy-500); margin-bottom:10px;}

.secondary-card h4{font-size:14.5px; margin-bottom:8px; color:var(--navy-900); font-family:'Inter',sans-serif; font-weight:600;}

.secondary-card p{font-size:12.5px; color:var(--ink-700); line-height:1.55;}

.secondary-note{font-size:12.5px; color:var(--ink-500); text-align:center; max-width:520px; margin:0 auto 56px; line-height:1.6;}


/* ---- Responsive ---- */

@media (max-width:980px){
  .team-grid{grid-template-columns:repeat(2,1fr);}
  .split, .why-industry, .founder-grid{grid-template-columns:1fr;}
  .mv-grid, .do-grid, .industry-grid{grid-template-columns:repeat(2,1fr);}
  .founder-pillars{grid-template-columns:1fr;}
  .founder-photo{max-width:280px;}
  .founder-portrait, .panel-sticky{position:static; max-width:320px;}
  .cap-row{grid-template-columns:140px 1fr;}
  .article-layout{grid-template-columns:1fr; padding-top:40px;}
  .share-col{position:static; flex-direction:row;}
  .related-grid{grid-template-columns:1fr;}
  .path-grid{grid-template-columns:1fr;}
  .contact-layout{grid-template-columns:1fr;}
  .field-row{grid-template-columns:1fr;}
  .hero-inner{grid-template-columns:1fr;}
  .hero h1{font-size:40px;}
  .serve-grid, .why-grid{grid-template-columns:repeat(2,1fr);}
  .proj-grid, .insight-grid{grid-template-columns:repeat(2,1fr);}
  .pillar{grid-template-columns:1fr; gap:32px; padding:64px 0;}
  .pillar:nth-of-type(even) .pillar-visual{order:0;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .founder{grid-template-columns:auto 1fr; }
  .founder .btn-outline{grid-column:1/-1;}
  .featured{grid-template-columns:1fr;}
  .insight-grid{grid-template-columns:repeat(2,1fr);}
  .split, .pl-grid{grid-template-columns:1fr;}
  .cap-items{grid-template-columns:repeat(2,1fr);}
  .page-hero .wrap{grid-template-columns:1fr;}
  .product-grid{grid-template-columns:repeat(2,1fr);}
  .cat-grid{grid-template-columns:repeat(2,1fr);}
  .steps-row{grid-template-columns:repeat(2,1fr);}
  .founder-grid{grid-template-columns:1fr;}
  .pillar-grid{grid-template-columns:repeat(2,1fr);}
  .media-grid{grid-template-columns:repeat(2,1fr);}
  .detail-grid{grid-template-columns:1fr;}
  .proj-grid{grid-template-columns:repeat(2,1fr);}
  .jump-grid, .secondary-grid{grid-template-columns:repeat(2,1fr);}
  .service-block{grid-template-columns:1fr; gap:32px; padding:56px 0;}
  .service-block:nth-of-type(even) .service-visual{order:0;}
}

@media (max-width:680px){
  .nav-links, .nav-cta{display:none;}
  .quote-list-pill{bottom:76px; right:16px; padding:12px 18px; font-size:12.5px;}
  .team-grid{grid-template-columns:1fr;}
  .material-line-grid{grid-template-columns:1fr;}
  .nav-links.mobile-open{
    display:flex; flex-direction:column; align-items:stretch; gap:0; position:fixed; top:68px; left:0; right:0;
    bottom:0; background:var(--navy-900); padding:8px 20px 24px; overflow-y:auto; z-index:55;
  }
  .nav-links.mobile-open li{width:100%;}
  .nav-links.mobile-open a, .nav-links.mobile-open .nav-link{
    width:100%; padding:14px 4px; border-bottom:1px solid rgba(255,255,255,0.08); font-size:14px; justify-content:space-between;
  }
  .nav-links.mobile-open a::after, .nav-links.mobile-open .nav-link::after{display:none;}
  .dropdown-menu{position:static; opacity:1; visibility:visible; transform:none; display:none; box-shadow:none; border:none; background:rgba(255,255,255,0.04); margin:0 0 4px;}
  .dropdown.open .dropdown-menu{display:block;}
  .nav-cta.mobile-open{display:block; text-align:center; margin:16px 4px 0;}
  .wrap{padding:0 20px;}
  section{padding:56px 0;}
  .page-hero h1{font-size:30px;}
  .mv-grid, .do-grid, .industry-grid, .stat-block{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr; gap:24px; padding-left:20px; padding-right:20px;}
  .approach-row{grid-template-columns:40px 1fr;}
  .article-hero h1{font-size:26px;}
  .article-layout{padding-left:20px; padding-right:20px;}
  .form-panel{padding:26px 22px;}
  .hamburger{display:flex;}
  .hero{padding-top:56px;}
  .hero h1{font-size:32px;}
  .hero-inner{padding-bottom:40px; gap:32px;}
  .serve-grid, .why-grid, .proj-grid, .insight-grid{grid-template-columns:1fr;}
  .mobile-cta{display:block;}
  .section-head{margin-bottom:36px;}
  .founder{grid-template-columns:1fr; text-align:left; padding:32px;}
  .featured-body{padding:28px 24px;}
  .insight-grid{grid-template-columns:1fr;}
  section, .cap-block{padding:56px 0;}
  .cap-items{grid-template-columns:1fr;}
  .product-grid{grid-template-columns:1fr;}
  .notice-band{flex-direction:column; align-items:flex-start; padding:24px;}
  .page-hero .wrap{flex-direction:column; align-items:flex-start;}
  .cat-grid, .steps-row{grid-template-columns:1fr;}
  .pillar-grid, .media-grid{grid-template-columns:1fr;}
  .bridge{flex-direction:column; align-items:flex-start; padding:32px;}
  .proj-grid{grid-template-columns:1fr;}
  .jump-grid, .secondary-grid{grid-template-columns:1fr;}
}

/* ---- Testimonials ---- */

.testimonial-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:24px;}

.testimonial-card{background:var(--white); border:1px solid var(--line); border-radius:var(--radius-md); padding:32px 30px; display:flex; flex-direction:column;}

.testimonial-card .quote-mark{font-family:'Montserrat',sans-serif; font-size:44px; font-weight:800; color:var(--orange-300); line-height:1; margin-bottom:4px;}

.testimonial-card p{font-size:14.5px; color:var(--ink-700); line-height:1.7; flex:1; margin-bottom:24px;}

.testimonial-foot{display:flex; align-items:center; gap:14px; padding-top:18px; border-top:1px solid var(--line);}

.testimonial-avatar{width:48px; height:48px; border-radius:50%; background:var(--navy-500); background-size:cover; background-position:center top; flex:none; position:relative; overflow:hidden;}

.testimonial-avatar-fallback{
  position:absolute; inset:0; display:flex; align-items:center; justify-content:center;
  font-family:'Montserrat',sans-serif; font-weight:800; font-size:14px; color:rgba(255,255,255,0.85);
}

.testimonial-name{font-weight:700; font-size:14px; color:var(--navy-900);}

.testimonial-meta{font-size:12px; color:var(--ink-500); margin-top:2px;}

@media (max-width:680px){
  .testimonial-grid{grid-template-columns:1fr;}
}
/* ---------- Form submission: spam trap, errors, consent ---------- */
.bx-hp{position:absolute; left:-9999px; top:auto; width:1px; height:1px; overflow:hidden;}

.form-error{
  background:#FBEAE6; border:1px solid var(--error); color:var(--error);
  border-radius:var(--radius-sm); padding:12px 16px; font-size:13.5px; line-height:1.5;
  margin:18px 0 0;
}
.field-error-msg{color:var(--error); font-size:12.5px; margin-top:6px; line-height:1.4;}
.has-error > input, .has-error > select, .has-error > textarea{border-color:var(--error);}

.success-ref{
  background:var(--orange-100); border:1px solid var(--orange-300); border-radius:var(--radius-sm);
  display:inline-block; padding:10px 16px; margin:0 auto 14px !important; max-width:480px !important;
  font-size:13.5px !important; color:var(--navy-900) !important;
}

.consent-row{
  display:flex; align-items:flex-start; gap:10px; margin:22px 0 0;
  font-size:12.5px; font-weight:400; color:var(--ink-700); line-height:1.5; cursor:pointer;
}
.consent-row input[type="checkbox"]{width:auto; flex:0 0 auto; margin-top:3px; padding:0;}
.consent-row a, .privacy-note a{color:var(--navy-700); font-weight:600; text-decoration:underline;}
.privacy-note{font-size:12px; color:var(--ink-500); margin:20px 0 0; line-height:1.5;}
