:root{
  --bg:#f4f6f8;
  --surface:#ffffff;
  --surface-2:#f2f5f8;
  --text:#162235;
  --muted:#637187;
  --line:#dde3ea;
  --blue:#38acee;
  --navy:#173961;
  --gold:#d7b24a;
  --dark:#0f223b;
  --shadow:0 18px 40px rgba(17, 32, 55, .08);
  --radius:24px;
  --container:min(1180px, calc(100% - 40px));
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color:var(--text);
  background:#fff;
  line-height:1.6;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.container{width:var(--container);margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:20;
  backdrop-filter:blur(12px);
  background:rgba(255,255,255,.86);
  border-bottom:1px solid rgba(221,227,234,.92);
}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center;gap:14px}
.brand img{width:42px;height:42px;object-fit:contain}
.brand strong{display:block;font-size:1rem}
.brand span{display:block;color:var(--muted);font-size:.84rem}
.site-nav{display:flex;align-items:center;gap:24px}
.site-nav a{font-weight:700;color:#2b3d54;font-size:.95rem}
.site-nav a:hover{color:var(--navy)}
.nav-toggle{display:none;border:1px solid var(--line);background:#fff;padding:10px 14px;border-radius:999px;font-weight:800}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  border:0;border-radius:999px;padding:14px 22px;
  background:#0d1830;color:#fff;font-weight:800;box-shadow:0 10px 25px rgba(10,20,37,.12);
}
.btn:hover{transform:translateY(-1px)}
.btn-sm{padding:11px 18px;font-size:.9rem}
.btn-secondary{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}
.hero.hero-split{background:#fff;padding:42px 0 34px;min-height:auto}
.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:46px;align-items:center}
.hero-copy{padding:30px 0}
.eyebrow,.section-tag{margin:0 0 14px;font-size:.74rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.eyebrow{color:var(--navy)}
.hero h1{margin:0 0 18px;font-size:clamp(2.7rem, 5vw, 4.7rem);line-height:.95;letter-spacing:-.05em;max-width:640px}
.lead{max-width:620px;font-size:1.04rem;margin:0 0 26px}
.lead.dark{color:#4f6076}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:22px}
.hero-facts{display:flex;gap:16px;flex-wrap:wrap}
.card-outline{border:1px solid #d7b24a;border-radius:20px;padding:18px 18px 16px;background:#fff;max-width:330px}
.card-outline strong{display:block;font-size:.88rem;text-transform:uppercase;letter-spacing:.12em;color:var(--navy);margin-bottom:6px}
.card-outline span{display:block;color:#5c6d83;font-weight:600;font-size:.96rem}
.hero-visual{position:relative}
.hero-carousel-shell{position:relative;padding:20px 28px 32px 18px}
.hero-carousel-shell::before{
  content:"";position:absolute;inset:0 0 32px 0;
  border-radius:46px 46px 110px 46px;
  background:linear-gradient(180deg,#f8fafc,#f3f6f9);
  border:1px solid var(--line);
}
.hero-carousel{
  position:relative;z-index:1;overflow:hidden;
  border-radius:36px 36px 96px 36px;
  aspect-ratio: 0.92 / 1;
  box-shadow:var(--shadow);
  background:#eaeff5;
}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity .9s ease}
.hero-slide.active{opacity:1}
.hero-slide img{
  width:100%;height:100%;object-fit:cover;object-position:center;
  transform:scale(1.04);animation:kenburns 10s ease-in-out infinite alternate;
}
@keyframes kenburns{
  from{transform:scale(1.02) translate(0,0)}
  to{transform:scale(1.12) translate(-1.2%, -1.2%)}
}
.card-floating{
  position:absolute;right:0;top:44px;z-index:2;
  width:min(250px, 45%);
  background:rgba(255,255,255,.95);backdrop-filter:blur(8px);
  border-radius:18px;box-shadow:var(--shadow);padding:16px 16px 14px;border:1px solid rgba(221,227,234,.95)
}
.note-label{display:block;margin-bottom:6px;font-size:.68rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#5f6f86}
.card-floating strong{display:block;font-size:1.1rem;line-height:1.1;margin-bottom:6px}
.card-floating p{margin:0;color:#5c6d83;font-size:.9rem}
.founder-badge{
  position:absolute;left:24px;bottom:0;z-index:2;background:rgba(255,255,255,.97);
  border-radius:999px;padding:8px 14px 8px 8px;display:flex;align-items:center;gap:10px;
  box-shadow:var(--shadow);border:1px solid rgba(221,227,234,.95)
}
.founder-badge img{width:44px;height:44px;border-radius:50%;object-fit:cover}
.founder-badge span{display:block;font-size:.66rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#617289}
.founder-badge strong{display:block;font-size:.9rem;line-height:1.1}
.trust-bar{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.dark-bar{background:#0f223b;color:#fff;border:0}
.trust-grid{display:grid;gap:24px;padding:22px 0}
.trust-grid-4{grid-template-columns:repeat(4,1fr)}
.trust-grid div{display:flex;flex-direction:column;gap:2px;padding:2px 0}
.trust-grid strong{font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;color:rgba(255,255,255,.72)}
.trust-grid span{font-weight:700;font-size:.94rem}
.section{padding:88px 0}
.section.alt{background:#f5f7fa}
.section-head{max-width:820px;margin-bottom:34px}
.section-head.narrow{max-width:700px}
.section-head.narrow-left{max-width:620px}
.section h2{margin:0 0 14px;font-size:clamp(2rem, 3vw, 3.2rem);line-height:1.04;letter-spacing:-.04em}
.section p{margin:0 0 14px;color:#42566e}
.split{display:grid;grid-template-columns:1.06fr .94fr;gap:46px;align-items:start}
.feature-stack{display:grid;gap:16px}
.mini-feature-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:22px 24px;box-shadow:var(--shadow)}
.mini-feature-card strong{display:block;font-size:1.05rem;margin-bottom:6px}
.mini-feature-card p{margin:0;color:#5c6d83}
.mini-feature-card.highlight{background:linear-gradient(180deg,#173961,#0f223b);color:#fff}
.mini-feature-card.highlight p{color:rgba(255,255,255,.82)}
.cards{display:grid;gap:22px}
.cards.three{grid-template-columns:repeat(3,1fr)}
.phase-card{padding:26px 24px 24px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:none}
.phase-number{display:inline-block;margin-bottom:18px;font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;color:#d7b24a}
.card h3{margin:0 0 8px;font-size:1.24rem}
.card-meta{margin:0 0 10px;color:var(--navy)!important;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.85rem}
.featured-phase{background:#12365d;color:#fff;border-color:#12365d;box-shadow:var(--shadow)}
.featured-phase p,.featured-phase .card-meta{color:rgba(255,255,255,.86)!important}
.parents-buying-grid{align-items:center}
.stacked-visuals{display:grid;grid-template-columns:.9fr 1.1fr;gap:16px;align-items:stretch}
.stacked-visuals img{border-radius:18px;object-fit:cover;width:100%;height:100%;box-shadow:var(--shadow)}
.stacked-visuals .tall{min-height:460px}
.stack-right{display:grid;grid-template-rows:1fr 1fr;gap:16px}
.benefit-list{display:grid;gap:18px;margin-top:8px}
.benefit-list div{padding-bottom:18px;border-bottom:1px solid var(--line)}
.benefit-list div:last-child{border-bottom:0;padding-bottom:0}
.benefit-list strong{display:block;margin-bottom:6px;font-size:1.02rem}
.benefit-list p{margin:0;color:#5b6c82}
.founder-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center}
.founder-grid-reverse{grid-template-columns:.94fr 1.06fr}
.large-photo img,.founder-photo img{border-radius:28px;box-shadow:var(--shadow);width:100%;height:auto}
.text-link{display:inline-block;margin-top:8px;font-weight:800;color:var(--navy)}
.gallery-grid{display:grid;gap:18px}
.gallery-masonry{grid-template-columns:repeat(3,1fr);grid-auto-rows:260px}
.gallery-masonry figure{margin:0;background:#fff;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.gallery-masonry figure:nth-child(2){grid-row:span 2}
.gallery-masonry figure:nth-child(4){grid-row:span 2}
.gallery-masonry figure:nth-child(6){grid-row:span 2}
.gallery-masonry img{width:100%;height:100%;object-fit:cover}
.contact-section{background:#eef1f2}
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:center}
.contact-card{border-radius:24px;background:#fff;border:1px solid var(--line);box-shadow:none;padding:28px}
.contact-card h3{margin-bottom:16px}
.contact-list{list-style:none;margin:0 0 20px;padding:0}
.contact-list li{padding:10px 0;border-bottom:1px solid #edf2f7;display:grid;grid-template-columns:150px 1fr;gap:12px}
.contact-list li:last-child{border-bottom:0}
.contact-list strong{font-size:.8rem;letter-spacing:.11em;text-transform:uppercase;color:#5e6e84}
.contact-list span,a{word-break:break-word}
.contact-actions{display:flex;gap:12px;flex-wrap:wrap}
.site-footer{padding:22px 0 34px;border-top:1px solid var(--line);background:#f7f8fa}
.footer-wrap{display:flex;justify-content:space-between;gap:24px;align-items:center}
.footer-brand img{width:40px;height:40px}
.footer-wrap p{margin:0;color:var(--muted);font-size:.95rem}
@media (max-width: 1080px){
  .hero-grid,.split,.founder-grid,.contact-grid,.cards.three,.trust-grid-4,.gallery-masonry{grid-template-columns:1fr}
  .hero-copy{padding-bottom:0}
  .hero-carousel-shell{max-width:720px;margin:0 auto}
  .gallery-masonry{grid-auto-rows:240px}
  .gallery-masonry figure:nth-child(2),.gallery-masonry figure:nth-child(4),.gallery-masonry figure:nth-child(6){grid-row:span 1}
}
@media (max-width: 980px){
  .site-nav{position:fixed;left:20px;right:20px;top:86px;padding:20px;border-radius:22px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);display:none;flex-direction:column;align-items:flex-start}
  .site-nav.open{display:flex}
  .nav-toggle{display:inline-flex}
  .cards.three,.founder-grid,.contact-grid,.split,.gallery-masonry,.stacked-visuals,.trust-grid-4{grid-template-columns:1fr}
  .stack-right{grid-template-rows:auto}
  .stacked-visuals .tall{min-height:360px}
  .footer-wrap{flex-direction:column;align-items:flex-start}
}
@media (max-width: 720px){
  .hero.hero-split{padding-top:22px}
  .hero h1{font-size:clamp(2.2rem,11vw,3.4rem)}
  .lead{font-size:1rem}
  .section{padding:68px 0}
  .hero-carousel-shell{padding:16px 16px 28px 10px}
  .card-floating{position:relative;right:auto;top:auto;width:auto;margin:-28px 12px 0 auto}
  .founder-badge{left:18px;bottom:-8px}
  .hero-carousel-shell::before{border-radius:34px 34px 78px 34px}
  .hero-carousel{border-radius:28px 28px 78px 28px}
  .contact-list li{grid-template-columns:1fr}
}
