/* Contango Financial OS — Castle homepage v2
   Visual direction: premium editorial financial brand, dark navy/gold,
   large castle hero, overlapping product preview, spacious cards. */

:root{
  --castle-navy:#061a2e;
  --castle-navy-2:#0b2944;
  --castle-gold:#d9a94d;
  --castle-gold-light:#f1d18a;
  --castle-cream:#f7f4ed;
  --castle-white:#fff;
  --castle-muted:#aeb9c5;
  --castle-border:rgba(255,255,255,.14);
  --castle-shadow:0 24px 60px rgba(0,0,0,.28);
}

body{background:var(--castle-navy);color:#fff;}
.castle-header{
  position:absolute!important;top:0;left:0;right:0;z-index:20;
  background:linear-gradient(180deg,rgba(2,14,27,.78),rgba(2,14,27,0));
  border-bottom:1px solid rgba(255,255,255,.08);
}
.castle-header .header-inner{min-height:84px;}
.castle-brand .logo{width:300px;height:auto;object-fit:contain;display:block;}
.castle-header .nav a{color:rgba(255,255,255,.92);font-size:.88rem;font-weight:600;}
.castle-header .nav a.active{color:#f1d18a;border-bottom:2px solid var(--castle-gold);}
.castle-header .btn-outline{border-color:rgba(255,255,255,.55);color:#fff;background:rgba(4,22,38,.28);}
.castle-header .btn-outline:hover{border-color:var(--castle-gold);color:var(--castle-gold-light);}
.castle-header .btn-gold,.btn-gold{background:linear-gradient(135deg,#e4b85f,#f0ce88);color:#081b2f;border:1px solid rgba(255,255,255,.16);box-shadow:0 10px 28px rgba(0,0,0,.22);}
.castle-header .btn-gold:hover,.btn-gold:hover{transform:translateY(-2px);filter:brightness(1.04);}

.castle-hero{
  position:relative;min-height:920px;overflow:visible;
  background:#061a2e;
}
.hero-backdrop{
  position:absolute;inset:0;
  background-image:linear-gradient(120deg,#061a2e 0%,#16344b 48%,#6d5b4d 100%);
  background-size:cover;background-position:center 38%;
  filter:saturate(.88);
  transform:scale(1.01);
}
.hero-overlay{
  position:absolute;inset:0;
  background:
    linear-gradient(90deg,rgba(3,17,31,.97) 0%,rgba(3,17,31,.82) 34%,rgba(3,17,31,.22) 67%,rgba(3,17,31,.12) 100%),
    linear-gradient(180deg,rgba(3,17,31,.22) 0%,rgba(3,17,31,.05) 52%,rgba(3,17,31,.88) 100%);
}
.hero-content{position:relative;z-index:2;padding-top:178px;display:flex;align-items:flex-start;justify-content:space-between;}
.hero-copy{max-width:670px;}
.hero-copy .eyebrow{letter-spacing:.18em;font-size:.72rem;font-weight:700;}
.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(4rem,7vw,6.8rem);line-height:.88;letter-spacing:-.055em;margin:20px 0 18px;color:#fff;text-shadow:0 3px 24px rgba(0,0,0,.25);}
.hero-copy h1 span{color:var(--castle-gold-light);}
.hero-subtitle{font-family:Georgia,"Times New Roman",serif;letter-spacing:.28em;font-weight:700;font-size:1.35rem;color:#fff;margin-bottom:22px;}
.hero-copy p{max-width:590px;color:#eef2f5;font-size:1.12rem;line-height:1.62;margin:0 0 28px;}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;}
.btn-large{padding:15px 22px;font-size:.98rem;}
.btn-glass{border:1px solid rgba(255,255,255,.72);color:#fff;background:rgba(4,22,38,.22);backdrop-filter:blur(6px);}
.btn-glass:hover{background:rgba(255,255,255,.1);color:#fff;}
.play{display:inline-grid;place-items:center;width:28px;height:28px;border:1px solid rgba(255,255,255,.7);border-radius:50%;margin-right:8px;font-size:.65rem;}
.hero-signature{font-family:"Brush Script MT","Segoe Script",cursive;color:#fff;font-size:2.15rem;line-height:.9;text-align:center;transform:rotate(-4deg);margin-top:45px;margin-right:4%;text-shadow:0 2px 14px rgba(0,0,0,.5);}
.hero-signature em{font-size:1.3em;color:var(--castle-gold-light);}

.dashboard-wrap{position:relative;z-index:5;margin-top:92px;}
.dashboard-window{
  display:grid;grid-template-columns:195px 1fr;
  min-height:430px;border:1px solid rgba(255,255,255,.28);
  border-radius:24px 24px 0 0;overflow:hidden;
  background:linear-gradient(145deg,rgba(5,23,40,.98),rgba(8,31,51,.94));
  box-shadow:0 34px 80px rgba(0,0,0,.42);
}
.dashboard-sidebar{background:linear-gradient(180deg,#071a2e,#0a2742);padding:20px 12px;border-right:1px solid var(--castle-border);}
.mini-brand{display:flex;align-items:center;gap:8px;padding:0 7px 20px;border-bottom:1px solid var(--castle-border);margin-bottom:12px;font-weight:700;letter-spacing:.09em;font-size:.72rem;}
.mini-brand img{width:36px;height:36px;object-fit:contain;border-radius:8px;}
.mini-brand small{font-size:.48rem;color:#aab7c3;letter-spacing:.12em;}
.dashboard-sidebar>a{display:block;color:#b8c5d1;padding:9px 10px;border-radius:8px;font-size:.78rem;margin:2px 0;}
.dashboard-sidebar>a.selected{background:linear-gradient(90deg,rgba(218,170,77,.38),rgba(218,170,77,.08));color:#fff;border-left:2px solid var(--castle-gold);}
.dashboard-main{padding:26px 28px 0;background:radial-gradient(circle at 58% 40%,rgba(29,77,111,.34),transparent 42%),linear-gradient(180deg,#08213a,#061a2e);}
.dash-top{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;border-bottom:1px solid var(--castle-border);padding-bottom:15px;}
.dash-kicker{font-size:.55rem;letter-spacing:.18em;color:var(--castle-gold-light);font-weight:800;margin-bottom:6px;}
.dash-top h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;margin:0 0 3px;}
.dash-top p{color:#aebac6;font-size:.72rem;margin:0;}
.dash-top>span{font-size:.65rem;color:#d9e1e7;border:1px solid var(--castle-border);padding:8px 11px;border-radius:7px;white-space:nowrap;}
.dash-body{display:grid;grid-template-columns:1fr 190px;gap:20px;align-items:center;padding:18px 0 12px;}
.castle-graphic{position:relative;min-height:225px;display:flex;justify-content:center;align-items:center;padding:8px 0;}
.castle-graphic img{width:120px;height:120px;object-fit:contain;border-radius:18px;filter:drop-shadow(0 14px 20px rgba(0,0,0,.3));}
.castle-label{position:absolute;font-size:.52rem;font-weight:800;letter-spacing:.06em;padding:7px 9px;border-radius:8px;background:rgba(4,20,34,.84);border:1px solid rgba(255,255,255,.2);box-shadow:0 6px 16px rgba(0,0,0,.24);}
.castle-label:after{content:"";display:block;width:6px;height:6px;border-radius:50%;background:#50d890;margin:4px auto 0;}
.castle-label.budget{left:12%;bottom:26%}.castle-label.tax{left:31%;top:16%}.castle-label.protect{right:16%;bottom:25%}.castle-label.debt{left:48%;bottom:9%}.castle-label.wealth{left:49%;top:5%}
.health-card{background:rgba(5,23,40,.8);border:1px solid var(--castle-border);border-radius:14px;padding:18px;text-align:center;}
.health-title{font-size:.72rem;font-weight:700;color:#fff;margin-bottom:6px;}
.health-score{font-size:2.5rem;font-family:Georgia,"Times New Roman",serif;color:#fff;border:6px solid #55c98b;border-left-color:#d8a94d;border-radius:50%;width:92px;height:92px;display:grid;place-items:center;margin:0 auto 8px;}
.health-card strong{font-size:.68rem;color:#f1d18a;}
.health-list{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-top:12px;text-align:left;}
.health-list span{font-size:.52rem;color:#b7c3cd;}
.dash-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;border-top:1px solid var(--castle-border);padding:14px 0 18px;}
.dash-stats>div{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:11px 13px;}
.dash-stats b{display:block;font-family:Georgia,"Times New Roman",serif;font-size:1.15rem;color:#fff;}
.dash-stats small{display:block;color:#94a6b5;font-size:.58rem;margin-top:3px;}

.foundation-strip{position:relative;z-index:6;background:#f8f6f1;color:#14283c;border-bottom:1px solid #ddd6c9;box-shadow:0 -10px 28px rgba(0,0,0,.08);}
.foundation-items{display:grid;grid-template-columns:repeat(7,1fr);}
.foundation-items>div{min-height:128px;padding:22px 12px 18px;text-align:center;border-right:1px solid #d8d3ca;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.foundation-items>div:last-child{border-right:0;}
.foundation-items b{font-size:2rem;color:#17334e;line-height:1;margin-bottom:8px;}
.foundation-items strong{font-size:.68rem;letter-spacing:.2em;}
.foundation-items span{font-size:.67rem;color:#8b8f93;line-height:1.25;margin-top:7px;max-width:120px;}

.section{padding:92px 0;}
.journey{background:linear-gradient(180deg,#061a2e 0%,#09233b 100%);}
.section-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.2rem,4vw,3.8rem);letter-spacing:-.035em;color:#fff;margin:10px 0 12px;}
.section-heading h2 span{color:var(--castle-gold-light);}
.section-heading p{max-width:650px;margin:0 auto;color:#9eafbe;line-height:1.6;}
.section-heading.center{text-align:center;}
.eyebrow{font-size:.68rem;letter-spacing:.2em;color:#b6812d;font-weight:800;}
.eyebrow.light{color:var(--castle-gold-light);}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px;}
.plan-card{border:1px solid rgba(255,255,255,.15);border-radius:12px;background:linear-gradient(145deg,rgba(17,50,78,.72),rgba(5,23,40,.88));padding:25px 22px;box-shadow:0 18px 35px rgba(0,0,0,.16);}
.plan-card.featured{border-color:rgba(221,174,79,.7);box-shadow:0 20px 45px rgba(0,0,0,.23),inset 0 1px rgba(255,255,255,.08);}
.plan-icon{font-size:2rem;color:var(--castle-gold-light);margin-bottom:15px;}
.plan-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.35rem;margin:0 0 5px;}
.plan-card p{color:#c1ccd5;font-size:.8rem;margin:0 0 15px;}
.plan-card ul{list-style:none;padding:0;margin:0 0 22px;min-height:112px;}
.plan-card li{color:#aebbc7;font-size:.72rem;padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06);}
.plan-card li:before{content:"✓";color:#e5bb6c;font-weight:800;margin-right:7px;}
.plan-card .btn{width:100%;text-align:center;}

.foundation{background:#f6f3ec;color:#172c42;}
.foundation-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:55px;align-items:center;}
.foundation-copy h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.6rem,4.5vw,4.2rem);line-height:.95;margin:12px 0 20px;color:#112940;}
.foundation-copy h2 span{color:#b8812e;}
.foundation-copy p{color:#67727d;line-height:1.7;max-width:560px;margin-bottom:26px;}
.foundation-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.foundation-cards>div{min-height:170px;background:#0a2742;color:#fff;border:1px solid #173b5b;border-radius:10px;padding:20px 14px;display:flex;flex-direction:column;align-items:flex-start;}
.foundation-cards b{font-size:1.7rem;color:#e5bd70;margin-bottom:30px;}
.foundation-cards strong{font-size:.85rem;margin-bottom:5px;}
.foundation-cards span{font-size:.65rem;color:#aab8c4;line-height:1.4;}

.dark-section{background:#04172a;padding-top:82px;padding-bottom:82px;}
.simple-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:35px;}
.simple-plans>div{padding:30px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:linear-gradient(145deg,#0a2844,#061a2e);text-align:center;}
.simple-plans>div:nth-child(2){border-color:rgba(221,174,79,.65);box-shadow:0 18px 40px rgba(0,0,0,.18);}
.simple-plans h3{font-family:Georgia,"Times New Roman",serif;margin:0 0 10px;}
.simple-plans strong{display:block;font-size:2.3rem;color:#f0ce88;font-family:Georgia,"Times New Roman",serif;}
.simple-plans strong span{font-size:.8rem;color:#aebac4;}
.simple-plans span{display:block;color:#98aab8;font-size:.72rem;margin-top:8px;}

.castle-footer{background:#061a2e;color:#fff;padding:55px 0 18px;border-top:1px solid rgba(255,255,255,.08);}
.castle-footer img{width:300px;max-width:100%;height:auto;}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:35px;}
.footer-grid h4{font-family:Georgia,"Times New Roman",serif;color:#f1d18a;margin:0 0 12px;}
.footer-grid a{display:block;color:#aebbc7;margin:8px 0;font-size:.78rem;}
.footer-grid p{color:#aebbc7;font-size:.76rem;line-height:1.6;}
.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:45px;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);color:#718391;font-size:.66rem;letter-spacing:.04em;}

@media (max-width:1050px){
  .foundation-items{grid-template-columns:repeat(4,1fr);}
  .journey-grid{grid-template-columns:repeat(2,1fr);}
  .foundation-layout{grid-template-columns:1fr;}
  .foundation-cards{grid-template-columns:repeat(5,1fr);}
}
@media (max-width:800px){
  .castle-header .header-inner{min-height:70px;}
  .castle-brand .logo{width:230px;}
  .hero-content{padding-top:128px;}
  .hero-copy h1{font-size:clamp(3.2rem,13vw,5rem);}
  .hero-signature{display:none;}
  .castle-hero{min-height:930px;}
  .dashboard-wrap{margin-top:42px;}
  .dashboard-window{grid-template-columns:1fr;}
  .dashboard-sidebar{display:none;}
  .dash-body{grid-template-columns:1fr;}
  .health-card{max-width:320px;margin:0 auto;width:100%;}
  .foundation-items{grid-template-columns:repeat(2,1fr);}
  .foundation-items>div:nth-child(2n){border-right:0;}
  .foundation-cards{grid-template-columns:repeat(2,1fr);}
  .foundation-cards>div:last-child{grid-column:1/-1;}
  .simple-plans,.resource-row{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr;}
  .footer-bottom{flex-direction:column;}
}
@media (max-width:520px){
  .hero-content{padding-top:116px;}
  .hero-copy p{font-size:.96rem;line-height:1.55;}
  .hero-actions .btn{width:100%;text-align:center;}
  .dash-stats{grid-template-columns:1fr 1fr;}
  .foundation-items>div{min-height:110px;}
  .foundation-cards{grid-template-columns:1fr 1fr;}
  .footer-grid{grid-template-columns:1fr;}
}


/* APPROVED REFERENCE HOMEPAGE — exact visual direction */
.castle-header{position:absolute!important;background:linear-gradient(180deg,rgba(3,15,29,.78),rgba(3,15,29,0));border-bottom:0;}
.castle-header .header-inner{min-height:88px;}
.castle-brand .logo{width:275px;height:auto;}
.castle-header .nav{gap:28px;}
.castle-header .nav a{font-size:.78rem;font-weight:600;letter-spacing:.01em;}
.castle-header .nav a.active{color:#f0cf8a;border-bottom:1px solid #d8ae5f;padding-bottom:7px;}
.castle-header .header-actions{gap:14px;}
.castle-header .btn{font-size:.78rem;padding:9px 18px;}
.castle-header .btn-gold{min-width:130px;}

.castle-hero{min-height:690px;height:690px;background:#07192b;overflow:hidden;}
.hero-backdrop{
  background-image:url("assets/hero-castle.jpg");
  background-size:cover;
  background-position:center center;
  filter:none;
  transform:none;
}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(3,16,30,.96) 0%,rgba(3,16,30,.82) 29%,rgba(3,16,30,.32) 56%,rgba(3,16,30,.06) 82%),
    linear-gradient(180deg,rgba(3,16,30,.38) 0%,rgba(3,16,30,.02) 48%,rgba(3,16,30,.20) 100%);
}
.hero-content{padding-top:190px;min-height:690px;align-items:flex-start;}
.hero-copy{max-width:585px;}
.hero-copy .eyebrow{font-size:.66rem;letter-spacing:.22em;margin-bottom:12px;}
.hero-copy h1{font-size:clamp(4rem,6.3vw,6.25rem);line-height:.9;letter-spacing:-.045em;margin:12px 0 14px;}
.hero-subtitle{font-size:1.25rem;letter-spacing:.31em;margin-bottom:20px;}
.hero-copy p{max-width:510px;font-size:.98rem;line-height:1.45;margin-bottom:22px;}
.hero-actions{gap:10px;}
.btn-large{padding:13px 18px;font-size:.82rem;}
.hero-signature{font-size:2rem;margin-top:50px;margin-right:2%;}

.dashboard-wrap{display:none;}

.foundation-strip{box-shadow:none;}
.foundation-items{min-height:128px;}
.foundation-items>div{min-height:128px;}
.foundation-items b{font-size:1.75rem;}
.foundation-items strong{font-size:.65rem;}
.foundation-items span{font-size:.61rem;}

.resources-section{background:#f6f3ec;padding-bottom:90px;}

@media (max-width:800px){
  .castle-header .header-inner{min-height:74px;}
  .castle-brand .logo{width:205px;}
  .castle-header .nav.open{display:flex;}
  .castle-header .header-actions{display:none;}
  .castle-hero{height:760px;min-height:760px;}
  .hero-content{padding-top:125px;min-height:760px;}
  .hero-copy{max-width:92%;}
  .hero-copy .eyebrow{font-size:.55rem;letter-spacing:.14em;}
  .hero-copy h1{font-size:clamp(3.15rem,13vw,4.7rem);}
  .hero-subtitle{font-size:.9rem;letter-spacing:.22em;}
  .hero-copy p{font-size:.9rem;max-width:370px;}
  .hero-signature{display:block;position:absolute;right:8%;top:470px;font-size:1.5rem;}
}
@media (max-width:520px){
  .castle-hero{height:720px;min-height:720px;}
  .hero-content{padding-top:112px;min-height:720px;}
  .hero-copy{max-width:100%;}
  .hero-copy h1{font-size:clamp(3rem,14vw,4rem);}
  .hero-copy p{max-width:300px;}
  .hero-actions .btn{width:auto;}
  .hero-actions{flex-wrap:nowrap;}
  .hero-actions .btn-large{padding:12px 13px;font-size:.72rem;}
  .hero-signature{right:3%;top:410px;font-size:1.25rem;}
}


/* MOBILE COMPOSITION — intentionally re-composed, not desktop-shrunk */
@media (max-width:800px){
  body{overflow-x:hidden;}
  .castle-header{position:absolute!important;background:linear-gradient(180deg,rgba(3,15,29,.9),rgba(3,15,29,.12));}
  .castle-header .header-inner{min-height:72px;padding:8px 18px;}
  .castle-brand .logo{width:185px;max-width:62vw;height:auto;}
  .castle-header .mobile-toggle{
    display:block;margin-left:auto;color:#fff;background:rgba(3,20,36,.5);
    border:1px solid rgba(255,255,255,.4);border-radius:8px;padding:7px 10px;font-size:20px;line-height:1;
  }
  .castle-header .nav{
    position:absolute;top:68px;left:14px;right:14px;display:none;flex-direction:column;
    gap:0;padding:10px;background:rgba(4,20,35,.97);border:1px solid rgba(255,255,255,.14);
    border-radius:12px;box-shadow:0 18px 40px rgba(0,0,0,.4);
  }
  .castle-header .nav.open{display:flex!important;}
  .castle-header .nav a{padding:12px 14px;font-size:.8rem;border-bottom:1px solid rgba(255,255,255,.08);}
  .castle-header .nav a:last-child{border-bottom:0;}
  .castle-header .header-actions{display:none;}

  .castle-hero{
    height:auto;min-height:760px;overflow:hidden;
    background:#061a2e;
  }
  .hero-backdrop{
    inset:auto 0 0 0;height:590px;
    background-size:cover;
    background-position:61% center;
  }
  .hero-overlay{
    inset:0;
    background:
      linear-gradient(180deg,rgba(3,16,30,.62) 0%,rgba(3,16,30,.5) 22%,rgba(3,16,30,.12) 45%,rgba(3,16,30,.28) 61%,rgba(3,16,30,.94) 100%),
      linear-gradient(90deg,rgba(3,16,30,.76) 0%,rgba(3,16,30,.18) 72%,rgba(3,16,30,.08) 100%);
  }
  .hero-content{
    min-height:760px;padding:108px 20px 38px;display:block;
  }
  .hero-copy{max-width:100%;}
  .hero-copy .eyebrow{
    font-size:.52rem;line-height:1.5;letter-spacing:.105em;white-space:nowrap;
    margin-bottom:12px;
  }
  .hero-copy h1{
    font-size:clamp(3.05rem,13.6vw,4.55rem);line-height:.88;
    letter-spacing:-.055em;margin:8px 0 13px;max-width:95vw;
  }
  .hero-subtitle{font-size:.82rem;letter-spacing:.2em;margin-bottom:14px;}
  .hero-copy p{
    font-size:.88rem;line-height:1.45;max-width:330px;margin-bottom:18px;
  }
  .hero-actions{display:flex;gap:8px;flex-wrap:nowrap;max-width:100%;}
  .hero-actions .btn{width:auto!important;white-space:nowrap;}
  .hero-actions .btn-large{padding:11px 12px;font-size:.68rem;}
  .hero-actions .play{width:22px;height:22px;margin-right:5px;font-size:.52rem;}
  .hero-signature{
    display:block;position:absolute;right:17px;top:438px;margin:0;
    font-size:1.35rem;line-height:.84;z-index:3;
  }
  .hero-signature em{font-size:1.15em;}

  /* Five foundations become a clean, readable mobile stack */
  .foundation-strip{background:#f8f6f1;}
  .foundation-items{grid-template-columns:1fr 1fr;min-height:0;}
  .foundation-items>div{
    min-height:118px;padding:18px 10px;border-right:1px solid #d8d3ca;
    border-bottom:1px solid #d8d3ca;
  }
  .foundation-items>div:nth-child(2n){border-right:0;}
  .foundation-items>div:last-child{
    grid-column:1/-1;border-right:0;border-bottom:0;min-height:105px;
  }
  .foundation-items b{font-size:1.45rem;margin-bottom:7px;}
  .foundation-items strong{font-size:.58rem;letter-spacing:.13em;}
  .foundation-items span{font-size:.62rem;margin-top:5px;}

  /* Journey cards stack like the reference instead of shrinking four columns */
  .section{padding:58px 18px;}
  .section-heading h2{font-size:2.25rem;line-height:1.02;}
  .section-heading p{font-size:.84rem;}
  .journey-grid{grid-template-columns:1fr;gap:12px;margin-top:25px;}
  .plan-card{padding:20px 18px;border-radius:12px;}
  .plan-card ul{min-height:0;}
  .plan-card .btn{padding:12px 16px;}

  .foundation{padding:58px 18px;}
  .foundation-layout{gap:25px;}
  .foundation-copy h2{font-size:2.7rem;}
  .foundation-copy p{font-size:.88rem;line-height:1.55;}
  .foundation-cards{grid-template-columns:1fr 1fr;gap:8px;}
  .foundation-cards>div{min-height:145px;padding:16px 12px;}
  .foundation-cards>div:last-child{grid-column:1/-1;}
  .foundation-cards b{margin-bottom:20px;font-size:1.45rem;}
  .foundation-cards strong{font-size:.78rem;}
  .foundation-cards span{font-size:.62rem;}

  .simple-plans{grid-template-columns:1fr;gap:10px;}
  .simple-plans>div{padding:23px;}
  .resources-section{padding:58px 18px;}
  .footer-grid{grid-template-columns:1fr;gap:24px;padding:0 18px;}
  .castle-footer img{width:210px;}
  .footer-bottom{margin:30px 18px 0;gap:8px;}
}

@media (max-width:420px){
  .castle-brand .logo{width:168px;}
  .hero-content{padding-left:17px;padding-right:17px;}
  .hero-copy .eyebrow{font-size:.46rem;letter-spacing:.075em;}
  .hero-copy h1{font-size:3rem;}
  .hero-subtitle{font-size:.72rem;letter-spacing:.17em;}
  .hero-copy p{font-size:.82rem;max-width:285px;}
  .hero-actions .btn-large{padding:10px 9px;font-size:.62rem;}
  .hero-signature{right:10px;top:430px;font-size:1.1rem;}
}


/* Seamless Contango navy brand background */
@media (max-width:800px){
  body,
  .castle-header,
  .castle-hero{
    background-color:#06182b !important;
  }
  .castle-header{
    background:linear-gradient(180deg,#06182b 0%,rgba(6,24,43,.96) 70%,rgba(6,24,43,.15) 100%) !important;
  }
  .castle-hero .hero-backdrop{
    background-color:#06182b;
  }
  .castle-hero .hero-overlay{
    background:
      linear-gradient(180deg,rgba(6,24,43,.18) 0%,rgba(6,24,43,.08) 35%,rgba(6,24,43,.18) 70%,rgba(6,24,43,.96) 100%);
  }
  .castle-brand .logo{
    background:#06182b;
    display:block;
  }
}


/* Exact visual match to the dark navy field in the approved Contango logo artwork */
@media (max-width:800px){
  :root{--contango-logo-navy:#142034;}
  html,body{background:#142034 !important;}
  .castle-header,
  .castle-hero{background-color:#142034 !important;}
  .castle-header{
    background:#142034 !important;
  }
  .castle-hero .hero-backdrop{
    background-color:#142034 !important;
  }
  .castle-hero .hero-overlay{
    background:
      linear-gradient(180deg,rgba(20,32,52,.16) 0%,rgba(20,32,52,.08) 36%,rgba(20,32,52,.16) 70%,rgba(20,32,52,.98) 100%);
  }
  .castle-brand .logo{
    background:#142034 !important;
  }
}


/* Uploaded mobile hero artwork — use the exact approved image on phones */
@media (max-width:800px){
  .castle-hero .hero-backdrop{
    background-image:url("assets/47B273EE-8AE7-435B-994E-F74591A71068.png");
    background-size:cover;
    background-position:center top;
  }
}


/* MOBILE HERO — exact uploaded artwork, no duplicated HTML overlay */
@media (max-width:800px){
  .castle-header{display:none !important;}
  .castle-hero{
    width:100%;
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:864 / 1536;
    overflow:hidden;
    background:#142034 !important;
  }
  .castle-hero .hero-backdrop{
    position:absolute !important;
    inset:0 !important;
    width:100%;
    height:100%;
    background-image:url("assets/47B273EE-8AE7-435B-994E-F74591A71068.png") !important;
    background-size:100% 100% !important;
    background-position:center center !important;
    background-repeat:no-repeat !important;
    filter:none !important;
    transform:none !important;
  }
  .castle-hero .hero-overlay,
  .castle-hero .hero-content{
    display:none !important;
  }
}


/* Premium foundation icons */
.foundation-cards .feature-icon{width:42px;height:42px;display:block;margin-bottom:28px;color:#e5bd70;}
.foundation-cards .feature-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
@media (max-width:800px){.foundation-cards .feature-icon{width:38px;height:38px;margin-bottom:18px;}}


/* Seamless footer brand navy */
.castle-footer{background:#142034 !important;}


/* CONTANGO OS PRODUCT PREVIEW */
.product-preview-section{background:#f6f3ec;color:#14283c;padding-top:88px;padding-bottom:96px;}
.product-preview-section .section-heading h2{color:#112940;}
.product-preview-section .section-heading p{color:#687681;}
.os-window{margin:42px auto 0;max-width:1120px;display:grid;grid-template-columns:190px 1fr;overflow:hidden;border:1px solid #203b54;border-radius:18px;background:#071c30;box-shadow:0 30px 70px rgba(5,20,35,.28);}
.os-sidebar{background:linear-gradient(180deg,#071a2e,#0b2944);padding:22px 14px;border-right:1px solid rgba(255,255,255,.1);}
.os-mini-brand{display:flex;align-items:center;gap:9px;padding:0 6px 19px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:14px;}
.os-mini-brand img{width:32px;height:32px;border-radius:8px;object-fit:cover;}
.os-mini-brand strong{display:block;font-size:.62rem;letter-spacing:.12em;color:#fff;}
.os-mini-brand small{display:block;font-size:.42rem;letter-spacing:.13em;color:#91a2b0;margin-top:2px;}
.os-nav{display:grid;gap:4px;}
.os-nav span{font-size:.68rem;color:#9fb0be;padding:9px 10px;border-radius:7px;}
.os-nav span.selected{background:linear-gradient(90deg,rgba(220,174,78,.34),rgba(220,174,78,.06));color:#fff;border-left:2px solid #e0b45f;}
.os-main{padding:25px 27px;background:radial-gradient(circle at 60% 25%,rgba(31,75,106,.35),transparent 42%),linear-gradient(180deg,#09233b,#061a2e);}
.os-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:19px;border-bottom:1px solid rgba(255,255,255,.1);}
.os-topbar small,.os-card-head span{font-size:.52rem;letter-spacing:.17em;color:#e7c477;font-weight:800;}
.os-topbar h3{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;margin:5px 0 3px;color:#fff;}
.os-topbar p{font-size:.67rem;color:#8fa2b1;margin:0;}
.os-health-pill{border:1px solid rgba(255,255,255,.13);border-radius:999px;padding:8px 12px;color:#aab9c5;font-size:.62rem;white-space:nowrap;}
.os-health-pill span{display:inline-block;width:6px;height:6px;border-radius:50%;background:#58cf8b;margin-right:6px;}
.os-health-pill strong{color:#f0ce88;margin-left:5px;}
.os-grid{display:grid;grid-template-columns:1.35fr .8fr;gap:12px;margin-top:14px;}
.os-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);border-radius:11px;padding:16px;}
.os-card-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;}
.os-card-head b{font-size:.55rem;color:#8295a4;font-weight:600;}
.os-action{display:grid;grid-template-columns:28px 1fr 18px;gap:10px;align-items:center;padding:10px 0;border-top:1px solid rgba(255,255,255,.07);}
.os-action:first-of-type{border-top:0;}
.os-action i{font-style:normal;font-size:.55rem;color:#d8ac5a;}
.os-action strong{display:block;font-size:.7rem;color:#fff;margin-bottom:3px;}
.os-action span{display:block;font-size:.57rem;line-height:1.35;color:#8ea1b0;}
.os-action em{font-style:normal;color:#e6c377;font-size:.85rem;}
.os-score-card{display:flex;flex-direction:column;}
.os-score-ring{width:92px;height:92px;margin:8px auto 12px;border:7px solid #56ca8b;border-left-color:#d8aa58;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;}
.os-score-ring strong{font-family:Georgia,"Times New Roman",serif;font-size:2rem;color:#fff;line-height:1;}
.os-score-ring small{font-size:.45rem;letter-spacing:.14em;color:#e8c578;margin-top:3px;}
.os-score-bars{display:grid;gap:6px;}
.os-score-bars span{position:relative;height:18px;background:rgba(255,255,255,.05);border-radius:5px;overflow:hidden;}
.os-score-bars i{display:block;height:100%;background:linear-gradient(90deg,#9f7935,#e7c57b);opacity:.72;}
.os-score-bars b{position:absolute;left:7px;top:4px;font-size:.45rem;color:#fff;}
.os-cash-card{grid-column:1/2;}
.os-number{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;color:#fff;margin:8px 0 11px;}
.os-number small{font-family:inherit;font-size:.55rem;color:#91a2b0;margin-left:6px;}
.os-bars{height:72px;display:flex;align-items:flex-end;gap:7px;padding:0 3px;border-bottom:1px solid rgba(255,255,255,.08);}
.os-bars i{display:block;flex:1;min-width:8px;background:linear-gradient(180deg,#e3bd70,#8f6b31);border-radius:3px 3px 0 0;opacity:.82;}
.os-progress-card{grid-column:2/3;grid-row:2/3;}
.os-castle-line{display:flex;align-items:center;gap:12px;margin:12px 0 15px;}
.os-castle-emblem{width:44px;height:44px;border:1px solid rgba(226,188,105,.55);border-radius:10px;display:grid;place-items:center;color:#e6c477;font-size:1.45rem;background:rgba(218,170,77,.08);}
.os-castle-line strong{display:block;font-size:.7rem;color:#fff;margin-bottom:4px;}
.os-castle-line span{display:block;font-size:.54rem;color:#899daa;}
.os-progress{height:7px;background:rgba(255,255,255,.08);border-radius:99px;overflow:hidden;margin-bottom:7px;}
.os-progress span{display:block;height:100%;background:linear-gradient(90deg,#a47b35,#efcc7f);border-radius:99px;}
.os-progress-card>small{font-size:.52rem;color:#8194a3;}
.os-footer-note{display:flex;justify-content:space-between;gap:15px;margin-top:13px;padding-top:13px;border-top:1px solid rgba(255,255,255,.08);font-size:.55rem;color:#7f93a3;}
.os-footer-note b{color:#e6c477;font-weight:700;white-space:nowrap;}

@media(max-width:800px){
  .product-preview-section{padding:58px 18px 64px;}
  .os-window{grid-template-columns:1fr;margin-top:28px;border-radius:14px;}
  .os-sidebar{display:none;}
  .os-main{padding:18px 15px;}
  .os-topbar h3{font-size:1.15rem;}
  .os-health-pill{font-size:.52rem;padding:7px 9px;}
  .os-grid{grid-template-columns:1fr;gap:9px;}
  .os-cash-card,.os-progress-card{grid-column:auto;grid-row:auto;}
  .os-footer-note{display:block;line-height:1.5;}
  .os-footer-note b{display:block;margin-top:5px;}
}
@media(max-width:420px){
  .os-topbar{display:block;}
  .os-health-pill{display:inline-block;margin-top:10px;}
  .os-action{grid-template-columns:23px 1fr 14px;}
  .os-action strong{font-size:.66rem;}
}

/* VIDEO HUB — reserved for Contango commercial + product videos */
.video-section{background:#071b2e;color:#fff;padding:88px 0 96px;border-top:1px solid rgba(255,255,255,.06);}
.video-section .section-heading p{color:#9aabb8;}
.video-feature{display:grid;grid-template-columns:1.55fr .8fr;gap:30px;align-items:center;margin-top:42px;}
.video-frame{border:1px solid rgba(224,184,95,.38);border-radius:16px;overflow:hidden;background:#030f1d;box-shadow:0 26px 60px rgba(0,0,0,.3);}
.video-placeholder{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;background:radial-gradient(circle at 50% 40%,rgba(34,79,109,.5),transparent 42%),linear-gradient(145deg,#0b2944,#041426);position:relative;}
.video-placeholder:before{content:"";position:absolute;inset:18px;border:1px solid rgba(255,255,255,.08);border-radius:10px;}
.video-badge{position:absolute;top:25px;left:27px;font-size:.5rem;letter-spacing:.16em;color:#e8c67a;font-weight:800;}
.video-play{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;border:1px solid #e1b967;color:#e8c67a;background:rgba(218,170,77,.08);font-size:1rem;padding-left:3px;margin-bottom:18px;}
.video-placeholder h3{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;margin:0;color:#fff;}
.video-placeholder p{font-size:.75rem;color:#9eafbd;margin:7px 0 10px;}
.video-note{font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:#718797;}
.video-copy{padding:10px 5px;}
.video-copy h3{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.08;margin:10px 0 16px;color:#fff;}
.video-copy p{color:#9eafbd;line-height:1.7;font-size:.88rem;}
.video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;}
.video-card{display:grid;grid-template-columns:155px 1fr;gap:16px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:rgba(255,255,255,.035);}
.video-card-media{aspect-ratio:16/9;border-radius:8px;background:linear-gradient(135deg,#102f49,#07192b);border:1px solid rgba(255,255,255,.08);display:grid;place-items:center;position:relative;color:#e6bf72;}
.video-card-media span{width:32px;height:32px;border:1px solid rgba(230,191,114,.7);border-radius:50%;display:grid;place-items:center;font-size:.55rem;padding-left:2px;}
.video-card-media small{position:absolute;bottom:5px;left:7px;font-size:.4rem;letter-spacing:.12em;color:#9babb8;}
.video-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.05rem;margin:6px 0;color:#fff;}
.video-card p{font-size:.62rem;line-height:1.45;color:#899ca9;margin:0;}
@media(max-width:800px){.video-section{padding:58px 18px 64px}.video-feature{grid-template-columns:1fr;gap:24px;margin-top:28px}.video-copy h3{font-size:1.65rem}.video-grid{grid-template-columns:1fr}.video-card{grid-template-columns:135px 1fr}.video-placeholder h3{font-size:1.45rem}}
@media(max-width:420px){.video-card{grid-template-columns:110px 1fr}.video-card h3{font-size:.95rem}}


/* Final desktop logo sizing override: enlarge the visible brand without changing mobile. */
@media (min-width: 801px) {
  .castle-header .header-inner { justify-content: space-between; }
  .castle-header .castle-brand { flex: 0 0 520px; width: 520px; }
  .castle-header .castle-brand img.logo { display: block; width: 520px; max-width: none; max-height: none; height: auto; }
}
@media (min-width: 801px) and (max-width: 1120px) {
  .castle-header .castle-brand { flex-basis: 320px; width: 320px; }
  .castle-header .castle-brand img.logo { width: 320px; max-height: none; }
}

@media (min-width: 801px) {
  .castle-header .header-inner { gap: 12px; }
  .castle-header .nav { gap: clamp(8px, 0.9vw, 14px); }
  .castle-header .nav a { white-space: nowrap; }
}

@media (min-width: 801px) {
  .castle-header .header-inner { gap: 10px; }
  .castle-header .nav { gap: clamp(6px, 0.7vw, 11px); }
  .castle-header .nav a { font-size: clamp(0.68rem, 0.78vw, 0.82rem); }
}


/* Warm parchment foundation strip with illustrated artwork replacing typographic icons. */
.foundation-strip { background: #f3e4c9; color: #352216; border-bottom: 1px solid #d5b98a; box-shadow: none; }
.foundation-items { grid-template-columns: repeat(5, minmax(0, 1fr)); background: #f3e4c9; }
.foundation-items > div { min-width: 0; min-height: 170px; padding: 12px 12px 15px; border-right: 1px solid #d8bd91; justify-content: flex-start; }
.foundation-items > div:last-child { border-right: 0; }
.foundation-items .foundation-art { display: block; width: min(100%, 150px); height: 88px; object-fit: contain; margin: 0 auto 6px; }
.foundation-items strong { color: #392416; font-size: .72rem; letter-spacing: .14em; }
.foundation-items span { color: #725b43; font-size: .75rem; line-height: 1.3; max-width: 180px; margin-top: 5px; }
.foundation-items b { display: none; }
@media (max-width: 800px) {
 .foundation-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .foundation-items > div { min-height: 150px; padding: 10px 8px 12px; border-right: 1px solid #d8bd91; border-bottom: 1px solid #d8bd91; }
 .foundation-items > div:nth-child(2n) { border-right: 0; }
 .foundation-items > div:last-child { grid-column: 1 / -1; border-right: 0; }
 .foundation-items .foundation-art { width: min(100%, 125px); height: 76px; }
 .foundation-items strong { font-size: .66rem; }
 .foundation-items span { font-size: .7rem; }
}


/* Final foundation strip treatment: pure white, matching the new clean reference. */
.foundation-strip {
  background: #ffffff !important;
  color: #30251d;
  border-bottom: 1px solid #e6e1da;
  box-shadow: none;
}
.foundation-items { background: #ffffff !important; }
.foundation-items > div {
  background: #ffffff;
  border-right-color: #e1ddd7;
}
.foundation-items .foundation-art {
  width: min(100%, 176px);
  height: 112px;
  object-fit: contain;
  margin: 0 auto 5px;
}
.foundation-items strong {
  color: #332116;
  font-family: Georgia, "Times New Roman", serif;
  font-size: .78rem;
  letter-spacing: .13em;
}
.foundation-items span {
  color: #5f5b57;
  font-size: .78rem;
  line-height: 1.35;
  max-width: 220px;
  margin-top: 6px;
}
@media (min-width: 801px) {
  .foundation-items { grid-template-columns: repeat(5, minmax(0, 1fr)); }
  .foundation-items > div { min-height: 190px; padding: 15px 14px 18px; }
}
@media (max-width: 800px) {
  .foundation-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .foundation-items > div { min-height: 158px; padding: 12px 8px; background: #fff; }
  .foundation-items .foundation-art { width: min(100%, 132px); height: 82px; }
  .foundation-items strong { font-size: .67rem; letter-spacing: .09em; }
  .foundation-items span { font-size: .7rem; }
}


/* Five foundation cards: move from the narrow icon strip to a photo-card row on white. */
.foundation-cards-section {
  background: #ffffff !important;
  color: #fff;
  padding: 22px 0 30px;
  border: 0;
  box-shadow: none;
}
.foundation-card-grid {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 22px;
  align-items: stretch;
}
.foundation-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border-radius: 13px;
  background: linear-gradient(155deg, #332113 0%, #17110b 100%);
  border: 1px solid rgba(174, 126, 54, .25);
  box-shadow: 0 7px 20px rgba(44, 28, 14, .12);
}
.foundation-card-image {
  display: block;
  width: 100%;
  height: clamp(145px, 13vw, 210px);
  object-fit: cover;
  object-position: center;
  margin: 0;
  border: 0;
  background: #24180e;
}
.foundation-card-copy {
  padding: 0 20px 22px;
  margin-top: -2px;
  flex: 1;
}
.foundation-card-copy h3 {
  margin: 0 0 8px;
  color: #fffaf0;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.15rem, 1.5vw, 1.55rem);
  line-height: 1.15;
  letter-spacing: -.02em;
}
.foundation-card-copy p {
  margin: 0;
  color: #e6dfd5;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(.88rem, 1vw, 1.05rem);
  line-height: 1.35;
}
.foundation-card-grid .foundation-card-image { height: clamp(140px, 13vw, 205px); }
.foundation-card-grid .foundation-card-copy { padding-top: 0; }
@media (min-width: 801px) {
  .foundation-card-grid { gap: clamp(14px, 2vw, 30px); }
}
@media (max-width: 1000px) {
  .foundation-card-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
}
@media (max-width: 800px) {
  .foundation-cards-section { padding: 16px 0 22px; }
  .foundation-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .foundation-card-image, .foundation-card-grid .foundation-card-image { height: 145px; }
  .foundation-card-copy { padding: 0 13px 16px; }
  .foundation-card-copy h3 { font-size: 1.1rem; }
  .foundation-card-copy p { font-size: .85rem; }
  .foundation-card:last-child { grid-column: 1 / -1; }
  .foundation-card:last-child .foundation-card-image { height: 160px; object-position: center 40%; }
}


/* Premium fintech refinement — October 2026 */
:root{
  --castle-navy:#101d32;
  --castle-navy-2:#1b2d46;
  --castle-gold:#c8a45d;
  --castle-gold-light:#e5cd98;
  --castle-cream:#f5f6f8;
  --castle-white:#fff;
  --castle-muted:#667386;
}
html{scroll-behavior:smooth}
body{background:#fff;color:#172235}
.foundation-cards-section{
  background:#fff!important;
  color:#172235!important;
  border:0!important;
  box-shadow:none!important;
  padding:46px 0 58px;
}
.foundation-card-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.foundation-card{
  min-width:0;
  overflow:hidden;
  background:#fff!important;
  color:#172235!important;
  border:1px solid #e5e9ef!important;
  border-radius:14px!important;
  box-shadow:0 8px 26px rgba(16,29,50,.07)!important;
  text-align:left;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.foundation-card:hover{
  transform:translateY(-4px);
  border-color:rgba(200,164,93,.8)!important;
  box-shadow:0 16px 34px rgba(16,29,50,.12)!important;
}
.foundation-card-image{
  display:block;
  width:100%;
  height:150px!important;
  object-fit:contain;
  padding:24px 18px 12px;
  box-sizing:border-box;
  background:linear-gradient(180deg,#f7f8fa 0%,#fff 100%);
}
.foundation-card-copy{padding:17px 18px 21px}
.foundation-card-copy h3{
  margin:0 0 8px;
  color:#14243a!important;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.02rem;
  letter-spacing:.01em;
  font-weight:700;
}
.foundation-card-copy h3:before{
  content:"";
  display:block;
  width:28px;
  height:2px;
  margin:0 0 12px;
  background:#c8a45d;
}
.foundation-card-copy p{
  margin:0;
  color:#667386!important;
  font-size:.84rem;
  line-height:1.55;
}
.section{scroll-margin-top:90px}
.journey{background:#f5f6f8!important;color:#172235}
.journey .section-heading h2{color:#14243a}
.journey .section-heading h2 span{color:#b18b45}
.journey .section-heading p{color:#667386}
.journey .eyebrow,.foundation .eyebrow{color:#9b7738}
.plan-card{
  background:#fff!important;
  color:#172235!important;
  border:1px solid #e1e6ed!important;
  border-radius:14px!important;
  box-shadow:0 10px 30px rgba(16,29,50,.06)!important;
}
.plan-card h3{color:#14243a}
.plan-card p,.plan-card li{color:#667386!important}
.plan-card li{border-bottom-color:#edf0f4!important}
.plan-card.featured{
  border-color:rgba(200,164,93,.8)!important;
  box-shadow:0 12px 32px rgba(16,29,50,.09)!important;
}
.plan-icon{color:#b18b45}
.foundation{background:#fff!important}
.product-preview-section{background:#f5f6f8}
.simple-plans>div{
  border:1px solid #e1e6ed;
  border-radius:14px;
  background:#fff;
  box-shadow:0 10px 30px rgba(16,29,50,.06);
}
.resources-section{background:#fff}
.castle-footer{background:#101d32}
@media(max-width:1000px){
  .foundation-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
}
@media(max-width:640px){
  .foundation-cards-section{padding:28px 0 36px}
  .foundation-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .foundation-card-image{height:120px!important;padding:18px 12px 8px}
  .foundation-card-copy{padding:14px 13px 17px}
  .foundation-card-copy h3{font-size:.95rem}
  .foundation-card-copy p{font-size:.78rem}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .foundation-card{transition:none}
}


/* Foundation cards: positioned directly below the castle hero; replace the old icon strip. */
.foundation-cards-section{
  position:relative;z-index:6;
  background:#fff!important;color:#172235!important;
  padding:34px 0 58px;border:0!important;box-shadow:none!important;
}
.foundation-card-grid{
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));
  gap:16px;align-items:stretch;
}
.foundation-card{
  min-width:0;min-height:224px;box-sizing:border-box;
  display:flex;flex-direction:column;align-items:flex-start;
  padding:24px 20px 22px;
  background:linear-gradient(145deg,#172238 0%,#0d1728 100%)!important;
  color:#fff!important;border:1px solid rgba(200,164,93,.28)!important;
  border-radius:14px!important;
  box-shadow:0 12px 28px rgba(16,29,50,.12)!important;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.foundation-card:hover{transform:translateY(-4px);border-color:#c8a45d!important;box-shadow:0 18px 34px rgba(16,29,50,.18)!important}
.foundation-card-icon{
  width:46px;height:46px;display:grid;place-items:center;
  margin:0 0 22px;color:#d8ba78;
}
.foundation-card-icon svg{
  width:44px;height:44px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;
}
.foundation-card-copy{padding:0!important}
.foundation-card-copy h3{
  margin:0 0 9px;color:#fff!important;
  font-family:Georgia,"Times New Roman",serif;font-size:1.04rem;
  font-weight:700;letter-spacing:0;
}
.foundation-card-copy h3:before{content:none!important;display:none!important}
.foundation-card-copy p{margin:0;color:#d1d9e3!important;font-size:.84rem;line-height:1.5}
.foundation .foundation-cards{display:none!important}
@media(max-width:1000px){
  .foundation-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
  .foundation-card{min-height:205px}
}
@media(max-width:640px){
  .foundation-cards-section{padding:24px 0 36px}
  .foundation-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .foundation-card{min-height:190px;padding:18px 15px}
  .foundation-card-icon{margin-bottom:17px}
  .foundation-card-copy h3{font-size:.96rem}
  .foundation-card-copy p{font-size:.78rem}
}


/* Keep the foundation-card band white; restore the premium navy section below it. */
.journey{
  background:linear-gradient(180deg,#101d32 0%,#162943 100%)!important;
  color:#fff!important;
}
.journey .section-heading h2{color:#fff!important}
.journey .section-heading h2 span{color:#e5cd98!important}
.journey .section-heading p{color:#c0cad6!important}
.journey .section-heading .eyebrow{color:#e5cd98!important}
.journey .plan-card{
  background:linear-gradient(145deg,#1a2c45 0%,#101d32 100%)!important;
  border:1px solid rgba(255,255,255,.14)!important;
}
.journey .plan-card.featured{
  border-color:rgba(200,164,93,.72)!important;
}
.journey .plan-card h3{color:#fff!important}
.journey .plan-card p,.journey .plan-card li{color:#c4cfdb!important}
.journey .plan-card li{border-bottom-color:rgba(255,255,255,.08)!important}


/* Clear, spacious pricing cards for the Financial Journey section. */
.journey .container{max-width:1180px}
.journey .section-heading{max-width:820px;margin:0 auto}
.journey .section-heading h2{line-height:1.08;margin:14px 0 18px}
.journey .section-heading p{font-size:1rem;line-height:1.7}
.journey-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:28px!important;
  max-width:900px;
  margin:48px auto 0!important;
  align-items:stretch;
}
.journey .plan-card{
  display:flex;flex-direction:column;
  min-width:0;
  padding:32px 30px 30px!important;
  border-radius:16px!important;
  box-shadow:0 16px 38px rgba(0,0,0,.18)!important;
}
.journey .plan-card-top{
  display:flex;align-items:center;justify-content:space-between;
  gap:14px;margin-bottom:16px;padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.journey .plan-icon{margin:0;font-size:1.7rem;color:#e5cd98}
.journey .plan-price{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.journey .plan-price strong{
  color:#fff;font-family:Georgia,"Times New Roman",serif;
  font-size:2.2rem;line-height:1;letter-spacing:-.04em;
}
.journey .plan-price span{color:#c4cfdb;font-size:.8rem}
.journey .plan-card h3{font-size:1.6rem;margin:0 0 8px}
.journey .plan-card p{font-size:.95rem;line-height:1.55;margin:0 0 20px}
.journey .plan-card ul{margin:0 0 26px;min-height:0;flex:1}
.journey .plan-card li{font-size:.88rem;line-height:1.5;padding:10px 0}
.journey .plan-card .btn{margin-top:10px;padding:14px 18px}
@media(max-width:700px){
  .journey-grid{grid-template-columns:1fr!important;gap:18px!important;margin-top:30px!important}
  .journey .plan-card{padding:25px 22px!important}
  .journey .plan-price strong{font-size:1.9rem}
}


/* Spacious pricing cards */
.journey-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px!important;max-width:900px;margin:48px auto 0!important;align-items:stretch}
.journey .plan-card{display:flex;flex-direction:column;min-width:0;padding:32px 30px 30px!important;border-radius:16px!important}
.journey .plan-card-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}
.journey .plan-price{display:flex;align-items:baseline;gap:6px;white-space:nowrap}
.journey .plan-price strong{color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:2.2rem;line-height:1;letter-spacing:-.04em}
.journey .plan-price span{color:#c4cfdb;font-size:.8rem}
.journey .plan-card h3{font-size:1.6rem;margin:0 0 8px}
.journey .plan-card p{font-size:.95rem;line-height:1.55;margin:0 0 20px}
.journey .plan-card ul{margin:0 0 26px;min-height:0;flex:1}
.journey .plan-card li{font-size:.88rem;line-height:1.5;padding:10px 0}
.journey .plan-card .btn{margin-top:10px;padding:14px 18px}
@media(max-width:700px){.journey-grid{grid-template-columns:1fr!important;gap:18px!important;margin-top:30px!important}.journey .plan-card{padding:25px 22px!important}.journey .plan-price strong{font-size:1.9rem}}
