
@font-face{font-family:'Inter';font-style:normal;font-weight:300;font-display:swap;
  src:url('assets/fonts/inter-latin-300-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;
  src:url('assets/fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;
  src:url('assets/fonts/inter-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:400;font-display:swap;
  src:url('assets/fonts/source-serif-4-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:600;font-display:swap;
  src:url('assets/fonts/source-serif-4-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:700;font-display:swap;
  src:url('assets/fonts/source-serif-4-latin-700-normal.woff2') format('woff2');}

:root{
  --navy:#122539;
  --blue:#B8862F;        
  --brass-ink:#8F6A1E;   
  --blue-soft:#AAB8FF;
  --butter:#FFE9A8;
  --honey:#DFA43A;
  --accent-bar:linear-gradient(90deg,#B8862F,#DFA43A);
  --dusk:linear-gradient(172deg,#0C1B2C 0%,#132741 48%,#1B2C48 80%,#20294C 100%);
  --white:#FFFFFF;
  --grey-bg:#F7F4EE;
  --grey-line:#E3DFD6;
  --grey-text:#5E6570;
  --serif:'Source Serif 4', Georgia, serif;
  --sans:'Inter', 'Helvetica Neue', Arial, sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
::selection{background:var(--butter);color:#122539;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans);color:var(--navy);background:var(--white);line-height:1.6;font-weight:400;-webkit-font-smoothing:antialiased;}
img{max-width:100%;display:block;}

nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;
    padding:1.1rem 4vw;background:rgba(255,255,255,0);transition:background .4s ease, box-shadow .4s ease;}
nav.scrolled{background:rgba(255,255,255,.97);box-shadow:0 1px 0 var(--grey-line);}
.logo{font-family:var(--serif);font-size:1.35rem;font-weight:700;letter-spacing:0;color:var(--white);transition:color .4s;text-decoration:none;}
nav.scrolled .logo{color:var(--navy);}
.logo span{color:var(--blue);}
.nav-links{display:flex;gap:2.2rem;list-style:none;align-items:center;}
.nav-links a{text-decoration:none;font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;
    color:rgba(255,255,255,.85);transition:color .3s;}
nav.scrolled .nav-links a{color:var(--grey-text);}
.nav-links a:hover,.nav-links a[aria-current="page"]{color:var(--butter);}
nav.scrolled .nav-links a:hover,nav.scrolled .nav-links a[aria-current="page"]{color:var(--brass-ink);}
.nav-cta{font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--navy) !important;
    background:var(--blue);border-radius:6px;padding:.6rem 1.3rem;text-decoration:none;transition:background .3s;}
.nav-cta:hover{background:#A2761F;}
.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:.4rem;margin-left:auto;}
.nav-toggle svg{width:26px;height:26px;stroke:var(--white);transition:stroke .3s;display:block;}
nav.scrolled .nav-toggle svg{stroke:var(--navy);}
nav.menu-open{background:var(--navy);box-shadow:none;}
nav.menu-open .logo{color:var(--white);}
nav.menu-open .nav-toggle svg{stroke:var(--white);}
@media(max-width:760px){
  nav{justify-content:space-between;}
  .nav-toggle{display:block;}
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;background:var(--navy);
      flex-direction:column;align-items:flex-start;gap:0;padding:.4rem 4vw 1.5rem;
      border-bottom:1px solid rgba(255,255,255,.12);}
  .nav-links.open{display:flex;}
  .nav-links a{color:rgba(255,255,255,.85);display:block;padding:.95rem 0;font-size:.78rem;width:100%;}
  nav.scrolled .nav-links a{color:rgba(255,255,255,.85);}
  
  .nav-links .nav-cta{background:none;color:rgba(255,255,255,.85) !important;
      padding:.95rem 0;border-radius:0;margin-top:0;width:100%;
      font-weight:500;font-size:.78rem;letter-spacing:.16em;}
  .nav-links .nav-cta:hover{background:none;color:var(--butter) !important;}
}

.hero{position:relative;background:var(--dusk);color:var(--white);display:flex;align-items:center;overflow:hidden;}
.hero-inner{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0;width:100%;}
.eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--butter);
    opacity:0;transform:translateY(16px);animation:rise .8s ease .2s forwards;}

h1{font-family:var(--serif);font-size:clamp(2.4rem,5.4vw,4.4rem);line-height:1.06;font-weight:600;max-width:16ch;
    margin:1.4rem 0 1.8rem;opacity:0;transform:translateY(24px);animation:rise .9s ease .45s forwards;}

.hero h1{line-height:1.04;}
h1 em{font-style:normal;color:var(--butter);position:relative;}
.hero p{max-width:52ch;font-size:1.1rem;font-weight:400;color:#FFFFFF;text-shadow:0 1px 2px rgba(4,24,39,.45);
    opacity:0;transform:translateY(20px);animation:rise .9s ease .7s forwards;}
.hero-actions{display:flex;gap:1rem;margin-top:2.6rem;flex-wrap:wrap;
    opacity:0;transform:translateY(20px);animation:rise .9s ease .9s forwards;}
.btn{display:inline-block;border-radius:6px;padding:.95rem 2rem;font-size:.78rem;font-weight:600;letter-spacing:.16em;
    text-transform:uppercase;text-decoration:none;transition:all .3s;border:none;cursor:pointer;font-family:var(--sans);}
.btn-primary{background:var(--blue);color:var(--navy);}
.btn-primary:hover{background:#A2761F;transform:translateY(-2px);}
.btn-ghost{border:1px solid rgba(255,255,255,.55);color:var(--white);background:transparent;text-shadow:0 1px 6px rgba(8,18,32,.45);}
.btn-ghost:hover{border-color:var(--white);background:rgba(255,255,255,.06);}
@keyframes rise{to{opacity:1;transform:translateY(0);}}

.hero-map{position:absolute;inset:0;z-index:1;opacity:.65;overflow:hidden;}

.hero-water{position:absolute;left:0;right:0;bottom:8.6%;width:100%;height:4px;}
.water{stroke:var(--butter);stroke-width:1.7;}

.hero-boat{position:absolute;bottom:8.6%;left:73.3%;height:9%;aspect-ratio:70/72;
    transform:translate(-50%,1.4%);}
.sunrise{stroke:var(--butter);stroke-width:1.7;}

@keyframes draw{to{stroke-dashoffset:0;}}

.hull{stroke-dasharray:1000;stroke-dashoffset:1000;animation:draw 3.9s ease-in-out .1s forwards;}
.hatch path{stroke-dasharray:60;stroke-dashoffset:60;animation:draw .6s ease forwards;}
.hatch path:nth-child(1){animation-delay:4.1s;}
.hatch path:nth-child(2){animation-delay:4.25s;}
.hatch path:nth-child(3){animation-delay:4.4s;}

.hero-birds{position:absolute;width:96px;height:auto;z-index:1;pointer-events:none;}
.hero .hero-birds{top:4.6rem;left:29%;}
.page-hero .hero-birds{top:5rem;left:31%;z-index:2;}

.bird{stroke:var(--butter);opacity:0;stroke-width:1.6;animation:birdIn 1.6s ease-in-out 2.4s forwards;}
.bird.b2{animation-delay:2.55s;animation-duration:1.45s;}
@keyframes birdIn{to{opacity:.55;}}

.page-hero .hero-map{opacity:.5;}
.page-hero .hero-water{animation:artIn .9s ease .1s both;}
.page-hero .hull{stroke-dashoffset:0;animation:artIn .9s ease .1s both;}
.page-hero .hatch path{stroke-dashoffset:0;animation:artIn .9s ease .25s both;}
.page-hero ~ * .bird,
.page-hero .bird{animation:birdFade 1s ease .35s both;}
@keyframes artIn{from{opacity:0;}to{opacity:1;}}
@keyframes birdFade{from{opacity:0;}to{opacity:.55;}}

.scroll-hint{position:absolute;bottom:2rem;left:50%;transform:translateX(-50%);z-index:2;text-decoration:none;cursor:pointer;
    color:rgba(255,255,255,.72);font-size:.7rem;letter-spacing:.25em;text-transform:uppercase;text-shadow:0 1px 6px rgba(8,18,32,.5);
    animation:bob 4.2s ease-in-out infinite;}
@keyframes bob{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,8px);}}

.page-hero{position:relative;background:var(--dusk);color:var(--white);padding:9.5rem 4vw 2.4rem;overflow:hidden;}
.page-hero .container{position:relative;z-index:2;}
.page-hero h1{font-size:clamp(2.1rem,4.2vw,3.4rem);max-width:22ch;animation-delay:.3s;}
.page-hero p{max-width:56ch;font-size:1.1rem;font-weight:400;color:#FFFFFF;text-shadow:0 1px 2px rgba(4,24,39,.45);
    opacity:0;transform:translateY(20px);animation:rise .9s ease .55s forwards;}

section{padding:4.2rem 4vw 6rem;}
.container{max-width:1200px;margin:0 auto;}
.section-eyebrow{font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-ink);}
h2{font-family:var(--serif);font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:600;line-height:1.2;margin:1rem 0 1.2rem;max-width:24ch;}
.lead{color:var(--grey-text);max-width:60ch;font-size:1rem;}
.lead strong{color:var(--navy);}

.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s ease, transform .8s ease;}
.reveal.visible{opacity:1;transform:translateY(0);}

.pillar-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:3.5rem;}
.pillar-grid.cols-4{grid-template-columns:repeat(4,1fr);}
.pillar{background:var(--white);padding:2rem 1.8rem 2.2rem;position:relative;
    border:2px solid var(--grey-line);border-radius:0;
    margin:0 -2px -2px 0;overflow:hidden;
    transition:background .35s,border-color .35s;}
.pillar:hover{border-color:var(--honey);z-index:2;}

.pillar:first-child{border-top-left-radius:12px;}
.pillar:nth-child(3),
.pillar:last-child:nth-child(-n+3){border-top-right-radius:12px;}
.pillar:last-child{border-bottom-right-radius:12px;}
.pillar:nth-child(3n):nth-last-child(-n+3){border-bottom-right-radius:12px;}
.pillar:nth-child(3n+1):nth-last-child(-n+3){border-bottom-left-radius:12px;}

.cols-4 .pillar:nth-child(3),
.cols-4 .pillar:nth-child(3n):nth-last-child(-n+3),
.cols-4 .pillar:nth-child(3n+1):nth-last-child(-n+3){border-radius:0;}
.cols-4 .pillar:first-child{border-top-left-radius:12px;}
.cols-4 .pillar:nth-child(4),
.cols-4 .pillar:last-child:nth-child(-n+4){border-top-right-radius:12px;}
.cols-4 .pillar:last-child{border-bottom-right-radius:12px;}
.cols-4 .pillar:nth-child(4n):nth-last-child(-n+4){border-bottom-right-radius:12px;}
.cols-4 .pillar:nth-child(4n+1):nth-last-child(-n+4){border-bottom-left-radius:12px;}
.pillar:hover{background:var(--grey-bg);}
.pillar::after{content:'';position:absolute;left:0;bottom:0;height:3px;width:0;background-image:var(--accent-bar);transition:width .45s ease;}
.pillar:hover::after{width:100%;}
.pillar-num{font-family:var(--serif);font-size:1.1rem;font-weight:700;color:var(--brass-ink);letter-spacing:0;line-height:1;}
.pillar-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;}
.pillar-head .p-icon{width:22px;height:22px;margin:0;display:flex;flex:none;order:2;}
.pillar h3{font-family:var(--serif);font-size:1.35rem;font-weight:600;margin:0 0 .9rem;line-height:1.3;}
.pillar p{font-size:.9rem;color:var(--grey-text);}
.pillar ul{list-style:none;margin-top:1.2rem;}
.pillar li{font-size:.88rem;color:var(--navy);padding:.45rem 0 .45rem 1.4rem;position:relative;border-top:1px solid var(--grey-line);}
.pillar li::before{content:'—';position:absolute;left:0;color:var(--blue);}
@media(max-width:900px){
  .pillar-grid,.pillar-grid.cols-4{grid-template-columns:1fr;border:1.5px solid var(--grey-line);border-radius:12px;overflow:hidden;}
  .pillar-grid > .pillar,.pillar-grid.cols-4 > .pillar{
    margin:0;border:none;border-radius:0;border-bottom:1px solid var(--grey-line);
    padding:1.2rem 1.1rem;display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;align-items:start;}
  .pillar-grid > .pillar:last-child{border-bottom:none;}
  .pillar-num{grid-column:1;grid-row:1;font-size:1.1rem;line-height:1.3;align-self:center;}
  .pillar-head{display:flex;align-items:center;gap:.4rem;grid-column:1;grid-row:1;margin-top:.15rem;}
  .pillar-head .p-icon{width:18px;height:18px;margin:0;display:flex;flex:none;order:2;}
  .pillar-head .pillar-num{font-size:1.1rem;line-height:1;margin:0;}
  .pillar h3{grid-column:2;grid-row:1;align-self:center;margin:0;font-size:1.1rem;line-height:1.3;}
  .pillar p,.pillar ul{grid-column:1 / -1;margin-top:.7rem;}
  .pillar ul{margin-top:.5rem;}
}

.stats{background:var(--white);color:var(--navy);border-top:1px solid var(--grey-line);border-bottom:1px solid var(--grey-line);}
.stats .section-eyebrow{color:var(--brass-ink);}
.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:3rem;margin-top:3rem;}
.stat-num{font-family:var(--serif);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:600;color:var(--navy);}
.stat-num span{color:var(--honey);}
.stat-label{font-size:.9rem;color:var(--grey-text);margin-top:.4rem;max-width:22ch;}
@media(max-width:900px){.stat-grid{grid-template-columns:repeat(2,1fr);}}

.value{background:var(--grey-bg);}
.value-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem 4rem;margin-top:3.2rem;}
.value-item{border-top:2px solid var(--navy);padding-top:1.4rem;transition:border-color .3s;}
.value-item:hover{border-color:var(--blue);}
.value-item h3{font-family:var(--serif);font-size:1.2rem;font-weight:600;margin-bottom:.5rem;}
.value-item p{font-size:.93rem;color:var(--grey-text);}
@media(max-width:760px){.value-grid{grid-template-columns:1fr;}}

.two-col{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:start;}
.two-col .lead + .lead{margin-top:1rem;}

.two-col img{width:100%;aspect-ratio:1024/848;object-fit:cover;display:block;
    filter:saturate(.96);border-radius:12px;}
@media(max-width:900px){
  .two-col{grid-template-columns:1fr;gap:2.5rem;}
  
  .two-col.img-first > *:first-child{order:2;}
  .two-col.img-first > *:last-child{order:1;}
}

.faq{max-width:820px;margin-top:3rem;}
.faq details{border-top:1px solid var(--grey-line);}
.faq details:last-child{border-bottom:1px solid var(--grey-line);}
.faq summary{font-family:var(--serif);font-weight:600;font-size:1.35rem;color:var(--navy);cursor:pointer;
    list-style:none;position:relative;padding:1.4rem 3rem 1.4rem 0;transition:color .3s;}
.faq summary:hover{color:var(--brass-ink);}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:'+';position:absolute;right:.2rem;top:50%;transform:translateY(-50%);
    font-family:var(--serif);font-size:1.6rem;font-weight:400;color:var(--blue);transition:transform .25s;}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);}
.faq details p{color:var(--grey-text);font-size:.96rem;padding:0 0 1.4rem;max-width:64ch;}
.faq details p + p{margin-top:.6rem;}

.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--grey-line);border:1px solid var(--grey-line);margin-top:3.5rem;border-radius:12px;overflow:hidden;}
.quote{background:var(--white);padding:2.8rem 2.4rem;position:relative;}
.quote::before{content:'\201C';font-family:var(--serif);font-size:4rem;line-height:1;color:var(--blue);display:block;margin-bottom:.6rem;}
.quote p{font-size:.98rem;color:var(--grey-text);}
.quote p + p{margin-top:.8rem;}
.quote footer{margin-top:1.6rem;font-weight:600;font-size:.9rem;color:var(--navy);letter-spacing:.02em;}
@media(max-width:900px){.quote-grid{grid-template-columns:1fr;}}

.cta{background:var(--white);text-align:center;}
.next-wrap + .cta{border-top:1px solid #98A4B2;}
.cta.dark{border-bottom:1px solid #98A4B2;}
.cta h2{margin-left:auto;margin-right:auto;}
.cta .lead{margin:0 auto 2.4rem;}
.cta.dark{background:linear-gradient(180deg,#F8FAFE 0%,#EBF1FA 100%);color:var(--navy);}
.cta.dark .section-eyebrow{color:var(--brass-ink);}
.cta.dark .lead{color:var(--grey-text);}

.article-hero{padding-bottom:4rem;}
.article-hero .container{max-width:820px;}
.article-meta{margin-top:1.8rem;display:flex;gap:.6rem;flex-wrap:wrap;align-items:center;
    font-size:.82rem;color:rgba(255,255,255,.6);letter-spacing:.04em;}
.article-body{padding-top:3.4rem;}
.article{max-width:820px;margin:0 auto;}
.article p{font-size:1.05rem;line-height:1.78;color:#3B4552;margin-bottom:1.35rem;}
.article-lead{font-size:1.18rem !important;line-height:1.68 !important;color:var(--navy) !important;
    font-weight:400;margin-bottom:1.8rem !important;}
.article h2{font-family:var(--serif);font-size:1.65rem;font-weight:600;line-height:1.25;
    color:var(--navy);margin:3rem 0 1rem;max-width:26ch;}
.article h3{font-family:var(--serif);font-size:1.18rem;font-weight:600;color:var(--navy);
    margin:2rem 0 .7rem;}
.article ul{margin:0 0 1.6rem;padding-left:0;list-style:none;}
.article ul li{position:relative;padding-left:1.5rem;margin-bottom:.85rem;
    font-size:1.02rem;line-height:1.7;color:#3B4552;}
.article ul li::before{content:'';position:absolute;left:0;top:.62em;width:7px;height:7px;
    border-radius:50%;background:var(--blue);}
.article a{color:var(--brass-ink);font-weight:600;text-decoration:none;
    border-bottom:1.5px solid var(--blue);}
.article a:hover{color:#6F5216;}
.callout{background:var(--grey-bg);border-left:3px solid var(--blue);border-radius:8px;
    padding:1.5rem 1.7rem;margin:2.2rem 0;font-size:1rem;line-height:1.7;color:#3B4552;}
.callout strong{color:var(--navy);}
.table-wrap{overflow-x:auto;margin:2rem 0 2.4rem;-webkit-overflow-scrolling:touch;}
.data-table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:640px;}
.data-table th{text-align:left;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
    color:var(--brass-ink);font-weight:600;padding:0 1rem .8rem 0;border-bottom:2px solid var(--grey-line);}
.data-table td{padding:.95rem 1rem .95rem 0;border-bottom:1px solid var(--grey-line);
    vertical-align:top;color:#3B4552;line-height:1.6;}
.data-table tr td:first-child{color:var(--navy);font-weight:600;white-space:nowrap;}
.review-note{margin-top:2.8rem;padding-top:1.5rem;border-top:1px solid var(--grey-line);
    font-size:.92rem !important;color:var(--grey-text) !important;line-height:1.7 !important;}
@media(max-width:760px){
  .article p{font-size:1rem;}
  .article h2{font-size:1.4rem;margin:2.4rem 0 .9rem;}
  .article-hero{padding-bottom:2.6rem;}
  .article-body{padding-top:2.4rem;}
}

.legal-hero{padding-bottom:3.4rem;}
.legal-hero .container{max-width:820px;}
.legal h2{font-size:1.15rem;margin:2.4rem 0 .8rem;white-space:nowrap;}
.legal p{font-size:1rem;}
.legal .meta-line{font-size:.88rem !important;color:var(--grey-text) !important;
    margin-bottom:2rem !important;}
.legal .review-note{background:var(--grey-bg);border-left:3px solid var(--blue);
    border-radius:8px;padding:1.2rem 1.4rem;margin-top:2.6rem;border-top:none;}

.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:3.5rem;}
.post{background:var(--white);padding:2.4rem 2rem 2.2rem;text-decoration:none;display:flex;
    flex-direction:column;position:relative;border:2px solid var(--grey-line);
    border-radius:0;margin:0 -2px -2px 0;overflow:hidden;
    transition:background .35s,border-color .35s;}
.post:hover{border-color:var(--honey);z-index:2;}
.post:first-child{border-top-left-radius:12px;}
.post:nth-child(3),
.post:last-child:nth-child(-n+3){border-top-right-radius:12px;}
.post:last-child{border-bottom-right-radius:12px;}
.post:nth-child(3n):nth-last-child(-n+3){border-bottom-right-radius:12px;}
.post:nth-child(3n+1):nth-last-child(-n+3){border-bottom-left-radius:12px;}
.post::after{content:'';position:absolute;left:0;bottom:0;height:3px;width:0;
    background-image:var(--accent-bar);transition:width .45s ease;}
.post:hover{background:var(--grey-bg);}
.post:hover::after{width:100%;}
.post-tag{font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
    color:var(--brass-ink);}
.post h3{font-family:var(--serif);font-size:1.2rem;font-weight:600;line-height:1.3;
    color:var(--navy);margin:.9rem 0 .8rem;}
.post p{font-size:.93rem;color:var(--grey-text);flex:1;}
.post-meta{margin-top:1.4rem;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;
    color:var(--grey-text);opacity:.8;}
@media(max-width:900px){
  .post-grid{grid-template-columns:1fr;}
  .post-grid > .post:nth-child(n){margin:0 0 -2px 0;border-radius:0;}
  .post-grid > .post:nth-child(n):first-child{border-top-left-radius:12px;border-top-right-radius:12px;}
  .post-grid > .post:nth-child(n):last-child{border-bottom-left-radius:12px;border-bottom-right-radius:12px;}
}

.next-wrap{padding:2.5rem 4vw 3.5rem;background:#E4EAF6;border-top:1px solid #B7BFC9;}
.next-wrap .container{max-width:1200px;margin:0 auto;}
.next-step{display:flex;align-items:center;justify-content:space-between;gap:2rem;
    background:var(--white);border:1px solid var(--grey-line);border-radius:12px;
    padding:1.4rem 2.3rem;text-decoration:none;cursor:pointer;position:relative;overflow:hidden;
    transform:translateY(-3px);box-shadow:0 16px 36px rgba(4,24,39,.12);
    transition:transform .3s ease, box-shadow .3s ease, border-color .3s ease;}
.next-step::before{content:'';position:absolute;left:0;top:0;bottom:0;width:4px;
    background-image:var(--accent-bar);opacity:0;transition:opacity .3s ease;}
.next-step:hover{transform:translateY(-6px);border-color:var(--blue);
    box-shadow:0 20px 40px rgba(4,24,39,.16);}
.next-step:hover::before{opacity:1;}
.next-label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.16em;
    text-transform:uppercase;color:var(--brass-ink);margin-bottom:.6rem;}
.next-title{display:block;font-family:var(--serif);font-weight:600;line-height:1.2;
    font-size:clamp(1.35rem,2.4vw,1.9rem);color:var(--navy);}
.next-step:hover .next-title{text-decoration:underline;text-underline-offset:5px;
    text-decoration-thickness:1.5px;text-decoration-color:var(--blue);}
.next-desc{display:block;margin-top:.6rem;color:var(--grey-text);font-size:.9rem;max-width:54ch;}
.next-arrow{flex:none;position:relative;width:54px;height:54px;border-radius:50%;background:var(--blue);
    color:var(--navy);display:block;font-size:0;line-height:0;
    box-shadow:inset 0 0 0 1px rgba(18,37,57,.06);
    transition:transform .3s ease, background .3s ease;}
/* The arrow is drawn, not a text character: the "→" glyph sits off-centre and its weight depends on the font.
   The SVG is symmetric around its centre, so it lands exactly in the middle of the circle. */
.next-arrow::before{content:'';position:absolute;inset:0;margin:auto;width:22px;height:22px;background:currentColor;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12h15M13.5 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
            mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12h15M13.5 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;}
.next-step:hover .next-arrow{transform:translateX(6px);background:#A2761F;}
@media(max-width:760px){
  .next-wrap{padding:1.45rem 4vw 2.05rem;}
  .next-step{padding:1rem 1.4rem;gap:1rem;}
  .next-desc{font-size:.9rem;}
  .next-arrow{width:44px;height:44px;}
  .next-arrow::before{width:18px;height:18px;}
}

.two-col.media-row{align-items:stretch;}
.media{position:relative;min-height:260px;}
.media img{position:absolute;inset:0;width:100%;height:100%;
    aspect-ratio:auto;object-fit:cover;border-radius:12px;filter:saturate(.96);}
@media(max-width:900px){
  .two-col.media-row{align-items:start;}
  .media{position:static;min-height:0;}
  .media img{position:static;height:auto;aspect-ratio:auto;}
}

@media(min-width:901px){
  .two-col.media-row .media.media-lock{position:static;min-height:0;align-self:start;}
  .media.media-lock img{position:static;width:100%;height:auto;aspect-ratio:1100/815;}
}

.contact-col{display:flex;flex-direction:column;}
.contact-col .email-card{margin-top:2.2rem;}

.two-col.contact-two-col{align-items:stretch;}
.contact-media{position:relative;min-height:420px;}
.contact-media img.tall{position:absolute;inset:0;width:100%;height:100%;
    aspect-ratio:auto;object-fit:cover;border-radius:12px;}
@media(max-width:900px){
  .two-col.contact-two-col{align-items:start;}
  .contact-media{position:static;min-height:0;}
  .contact-media img.tall{position:static;aspect-ratio:4/3;height:auto;}
}

.band{padding:0 4vw 3.4rem;}
.band .container{max-width:1200px;margin:0 auto;}
.band img{width:100%;aspect-ratio:1800/630;object-fit:cover;display:block;border-radius:12px;filter:saturate(.96);}
@media(max-width:760px){.band{padding:0 4vw 2.2rem;} .band img{aspect-ratio:3/2;}}

.form-wrap{max-width:640px;}
.form-wrap label{display:block;font-size:.78rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
    color:var(--navy);margin:1.6rem 0 .5rem;}
.form-wrap input,.form-wrap textarea{width:100%;padding:.9rem 1rem;border:1px solid var(--grey-line);
    background:var(--white);font-family:var(--sans);font-size:1rem;color:var(--navy);transition:border-color .3s;}
.form-wrap input:focus,.form-wrap textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 1px var(--blue);}
.form-wrap textarea{min-height:150px;resize:vertical;}
.form-wrap .btn{margin-top:2rem;}
.contact-aside a{color:var(--brass-ink);text-decoration:none;font-weight:600;}
.contact-aside a:hover{text-decoration:underline;}

.hero::after,.page-hero::after{content:'';position:absolute;left:50%;bottom:0;transform:translate(-50%,68%);
    width:min(1100px,96vw);height:620px;z-index:0;pointer-events:none;
    background:radial-gradient(closest-side,
        rgba(255,199,120,.30),
        rgba(255,214,145,.18) 40%,
        rgba(255,226,165,.08) 66%,
        rgba(255,231,168,0) 84%);}
.page-hero::after{background:radial-gradient(closest-side,
        rgba(255,199,120,.22),
        rgba(255,214,145,.13) 40%,
        rgba(255,226,165,.06) 66%,
        rgba(255,231,168,0) 84%);}

.p-icon{width:40px;height:40px;color:var(--blue);margin-bottom:1.1rem;display:block;}
.p-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;}
.pillar:hover .p-icon{color:var(--brass-ink);}

.destinations{padding:2.4rem 4vw 2.8rem;background:var(--white);border-top:1px solid var(--grey-line);border-bottom:1px solid var(--grey-line);overflow:hidden;}
.destinations .dest-label{text-align:center;font-size:.78rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--grey-text);margin-bottom:1.6rem;}
.marquee + .marquee{margin-top:2px;}   
.marquee{display:flex;overflow:hidden;padding:6px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);}
.marquee-track{display:flex;gap:.8rem;padding-right:.8rem;flex-shrink:0;will-change:transform;
    transform:translateX(var(--mx,0px));}
.chip{display:flex;align-items:center;gap:.55rem;white-space:nowrap;border:1px solid var(--grey-line);border-radius:999px;
    padding:.55rem 1.15rem;font-size:.88rem;color:var(--navy);background:var(--white);transition:border-color .3s,transform .3s;}
.chip:hover{border-color:var(--blue);transform:translateY(-2px) rotate(-1.2deg);}
.chip .flag{font-size:1.05rem;}

.cta.dark{position:relative;overflow:hidden;}
.cta.dark .container{position:relative;z-index:2;}
.cta.dark::before{content:'';position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.08;
    background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 300' fill='none' stroke='%23B8862F' stroke-width='1.6' stroke-linecap='round'><path d='M0 230 H1200'/><path d='M520 230 a80 80 0 0 1 160 0'/><path d='M120 258 q30 -12 60 0 t60 0 t60 0'/><path d='M900 262 q30 -12 60 0 t60 0'/></svg>") no-repeat center bottom / min(1100px,100%) auto;}
.cta.dark::after{content:'';position:absolute;left:0;right:0;bottom:0;height:50%;z-index:0;pointer-events:none;
    background:radial-gradient(70% 90% at 50% 112%, rgba(184,134,47,.08), transparent 70%);}

.email-card{border:1px solid var(--grey-line);background:var(--grey-bg);padding:2.8rem 2.4rem;position:relative;border-radius:12px;overflow:hidden;}
.email-card::before{content:'';position:absolute;left:0;top:0;height:3px;width:64px;background-image:var(--accent-bar);}
.email-card h3{font-family:var(--serif);font-size:1.35rem;font-weight:600;margin:.9rem 0 .8rem;}
.email-card p{font-size:.9rem;color:var(--grey-text);max-width:48ch;}
.email-link{display:inline-block;font-family:var(--serif);font-size:clamp(1.2rem,2.4vw,1.7rem);font-weight:600;
    color:var(--brass-ink);text-decoration:none;margin:1.6rem 0 1rem;border-bottom:2px solid var(--blue);
    transition:color .3s,border-color .3s;word-break:break-all;}
.email-link:hover{color:#6F5216;border-color:#A2761F;}
.email-hint{font-size:.9rem !important;color:var(--grey-text);}

.site-footer{background:var(--navy);color:rgba(255,255,255,.6);padding:1.55rem 4vw 1.35rem;font-size:.85rem;}
.footer-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;gap:.7rem;}
.footer-row{display:flex;justify-content:space-between;align-items:center;gap:1.2rem;flex-wrap:wrap;}
.footer-nav{display:flex;gap:1.8rem;flex-wrap:wrap;}
.site-footer .logo{font-size:1.1rem;color:var(--white);}
.site-footer a{color:rgba(255,255,255,.65);text-decoration:none;transition:color .2s;}
.site-footer a:hover{color:var(--white);}
.footer-sub{border-top:1px solid rgba(255,255,255,.12);padding-top:.7rem;font-size:.78rem;color:rgba(255,255,255,.55);
    justify-content:flex-end;gap:1.8rem;} /* same spacing as the links on the first footer row */
.footer-sub a{color:rgba(255,255,255,.55);}

@media(max-width:760px){
  .footer-row:not(.footer-sub){flex-direction:column;align-items:flex-start;gap:.7rem;}
  .footer-nav{column-gap:1.35rem;row-gap:.35rem;}
  .footer-sub{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;align-items:center;column-gap:1.35rem;row-gap:.35rem;}
}

@media(max-width:760px){
  section{padding:2.4rem 4vw 3.4rem;}
  .destinations{padding:1.8rem 4vw 2rem;}
  .pillar-grid{margin-top:2rem;}
  .value-grid{margin-top:2rem;}
  .quote-grid{margin-top:2rem;}
  .stat-grid{margin-top:2rem;}
  .faq{margin-top:1.8rem;}
  h2{margin:.7rem 0 .9rem;}
}

@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;}
  .reveal{opacity:1;transform:none;}
  .eyebrow,h1,.hero p,.hero-actions,.page-hero p{opacity:1;transform:none;}
  .sunrise path{stroke-dashoffset:0;}
  .bird{opacity:.55;}
  .marquee-track{transform:none;flex-wrap:wrap;justify-content:center;row-gap:.8rem;padding-right:0;}
  .marquee{flex-wrap:wrap;justify-content:center;mask-image:none;-webkit-mask-image:none;}
  .marquee-track[aria-hidden="true"]{display:none;}
}

.post-soon{cursor:default;opacity:.72;}
.post-soon:hover{transform:none;box-shadow:none;}

.sources{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--grey-line);}
.sources h2{font-size:1.15rem;margin-bottom:.4rem;}
.sources > p{font-size:.88rem;color:var(--grey-text);margin-bottom:.9rem;}
.sources ul{list-style:none;padding:0;margin:0;}
.sources li{padding:.4rem 0 .4rem 1.1rem;position:relative;font-size:.92rem;line-height:1.5;}
.sources li::before{content:'\2197';position:absolute;left:0;color:var(--blue);font-size:.85rem;}
.sources a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid rgba(143,106,30,.35);}
.sources a:hover{border-bottom-color:var(--brass-ink);}

/* Shared hero floor: inner pages only. Front page keeps its own height. */
@media(min-width:761px){
  .page-hero{min-height:36rem;box-sizing:border-box;}
}



/* Hero text uses the same box as the rest of the page. */
.hero{padding:9rem 4vw 5.5rem;}
.hero-inner{max-width:1200px;margin:0 auto;padding:0;width:100%;position:relative;}

/* Illustration locked to the content box, between the eyebrow and the heading. */
.hero-map{position:absolute;left:0;right:0;top:0;bottom:auto;height:4.5rem;z-index:1;pointer-events:none;opacity:.85;overflow:visible;}
.hero-water{position:absolute;left:0;right:0;top:1.7rem;bottom:auto;width:100%;height:4px;}
.hero-boat{position:absolute;top:1.7rem;right:0;left:auto;bottom:auto;height:52px;width:auto;aspect-ratio:70/72;
    transform:translate(0,-58%);}
.hero-birds,.hero .hero-birds,.page-hero .hero-birds{position:absolute;top:-1.6rem;left:46%;right:auto;width:96px;height:auto;z-index:2;pointer-events:none;}
.hero > .hero-inner > .eyebrow,
.hero > .hero-inner > h1,
.hero > .hero-inner > p,
.hero > .hero-inner > .hero-actions,
.page-hero > .container > .eyebrow,
.page-hero > .container > h1,
.page-hero > .container > p{position:relative;z-index:2;}

.destinations .marquee{max-width:1200px;margin-left:auto;margin-right:auto;}
.hero-boat{background:transparent;}

/* Sea line and boat stay inside the content box. */
.hero-inner,.page-hero .container{position:relative;overflow:visible;}
.hero > .hero-inner > .hero-map,
.page-hero > .container > .hero-map{
  position:absolute;top:1.7rem;left:0;width:100%;right:auto;height:4px;inset:auto;
  z-index:1;pointer-events:none;opacity:1;overflow:visible;
}
.hero-water{position:relative;display:block;width:100%;height:4px;left:auto;right:auto;top:auto;bottom:auto;}
.hero-boat{position:absolute;top:0;right:0;left:auto;bottom:auto;height:48px;width:auto;
  transform:translate(0,-58%);background:transparent;}

/* Line spans the content box only. Boat sits on the line, at its right end. */
.hero > .hero-inner > .hero-map,
.page-hero > .container > .hero-map{
  position:absolute !important;
  top:1.7rem !important;
  left:0 !important;
  right:0 !important;
  width:auto !important;
  height:0 !important;
  margin:0 !important;
  z-index:1;
  pointer-events:none;
  overflow:visible;
}
.hero-water{
  position:absolute !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  width:100% !important;
  height:4px !important;
  display:block;
}
.hero-boat{
  position:absolute !important;
  top:auto !important;
  bottom:0 !important;
  right:0 !important;
  left:auto !important;
  height:46px !important;
  width:auto !important;
  transform:translateY(2px) !important;
  background:transparent;
}

/* Line ends at the boat, three quarters across the content box. */
.hero > .hero-inner > .hero-map,
.page-hero > .container > .hero-map{right:auto !important;width:75% !important;}
.hero-boat{right:0 !important;}

.hero-water .water,.water{stroke:#FFE9A8;stroke-opacity:.85;}

.process-split{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:stretch;}
.process-split > div:first-child{padding-right:2.8rem;}
.process-photo{position:relative;border-radius:0 12px 12px 0;overflow:hidden;min-height:100%;}
.process-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
.process-list{margin-top:2.4rem;border-top:1px solid var(--grey-line);}
.process-step{display:grid;grid-template-columns:1fr;gap:0;padding:1.8rem 0;border-bottom:1px solid var(--grey-line);}
.process-step h2{font-family:var(--serif);font-size:1.45rem;font-weight:600;margin:0 0 .6rem;}
.process-step p{color:var(--grey-text);font-size:.96rem;max-width:64ch;margin:0;}
.process-step a{color:var(--brass-ink);text-decoration:none;border-bottom:1px solid rgba(143,106,30,.4);}
.process-step a:hover{border-bottom-color:var(--brass-ink);}
@media(max-width:900px){
  .process-split{grid-template-columns:1fr;gap:1.6rem;}
  .process-split > div:first-child{padding-right:0;}
  .process-photo{position:relative;height:220px;min-height:220px;order:-1;border-radius:12px 12px 0 0;}
}

.news-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;}
.news-card{display:flex;flex-direction:column;background:var(--white);border:1px solid var(--grey-line);
    border-radius:12px;padding:0;text-decoration:none;position:relative;overflow:hidden;
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.news-card::before{content:'';position:absolute;left:0;top:0;height:3px;width:0;background-image:var(--accent-bar);transition:width .45s ease;z-index:2;}
.news-card:hover{transform:translateY(-3px);border-color:var(--blue);box-shadow:0 16px 36px rgba(4,24,39,.10);}
.news-card:hover::before{width:100%;}
.news-thumb{display:block;width:100%;height:auto;aspect-ratio:2/1;object-fit:cover;background:var(--grey-bg);}
.news-card-body{padding:1.7rem 1.8rem 2rem;}
.news-meta{font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--blue);}
.news-card h3{font-family:var(--serif);font-size:1.4rem;font-weight:600;line-height:1.28;margin:.9rem 0 .8rem;color:var(--navy);}
.news-card p{font-size:.94rem;color:var(--grey-text);}
.news-more{margin-top:1.6rem;font-size:.8rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);}
.news-card:hover .news-more{text-decoration:underline;text-underline-offset:4px;}
.news-card.is-lead{grid-column:1 / -1;flex-direction:row;align-items:stretch;}
.news-lead-text{display:flex;flex-direction:column;justify-content:center;padding:2.4rem 2.2rem 2.6rem;flex:1 1 50%;min-width:0;}
.news-card.is-lead h3{font-size:clamp(1.5rem,2.8vw,2.1rem);max-width:22ch;}
.news-card.is-lead p{max-width:62ch;font-size:1rem;}
.news-lead-media{flex:1 1 50%;position:relative;min-height:260px;max-height:420px;overflow:hidden;}
.news-lead-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;}
@media(max-width:760px){
  .news-grid{grid-template-columns:1fr;gap:1.4rem;}
  .news-card.is-lead{flex-direction:column;}
  /* Mobile: every card is picture first, text below, with the same 2:1 thumbnail. */
  .news-lead-media{order:-1;flex:none;min-height:0;max-height:none;height:auto;aspect-ratio:2/1;}
  .news-lead-text{padding:1.7rem 1.8rem 2rem;}
}

/* About photos: edge that meets the text is sharp. */
@media(min-width:901px){
  .two-col.media-row{gap:0;}
  .two-col.media-row > .reveal:not(.media){padding-right:2.8rem;}
  .two-col.media-row.img-first > .reveal:not(.media){padding-right:0;padding-left:2.8rem;}
  .two-col.media-row .media img{border-radius:0 12px 12px 0;}
  .two-col.media-row.img-first .media img{border-radius:12px 0 0 12px;}
}
@media(max-width:900px){
  .two-col.media-row{gap:0;}
  .two-col.media-row > .media{order:-1;}
  .two-col.media-row.img-first > *:first-child{order:-1;}
  .two-col.media-row.img-first > *:last-child{order:1;}
  .two-col.media-row .media img{border-radius:12px 12px 0 0;aspect-ratio:16/9;object-fit:cover;}
  .two-col.media-row > .reveal:not(.media){padding-top:1.6rem;}
}

.stats.value,.pillars.value{background:var(--grey-bg);}
.stats.value{border-color:transparent;}

.destinations.band{background:var(--grey-bg);border-color:transparent;}

#testimonials{background:var(--white);}
.t-slider{overflow:hidden;margin-top:3.2rem;cursor:grab;filter:drop-shadow(0 6px 16px rgba(4,24,39,.08));position:relative;border-radius:12px 0 0 12px;user-select:none;-webkit-user-select:none;}
.t-slider.is-drag{cursor:grabbing;}
.t-track{display:flex;gap:1.2rem;transition:transform 1.1s cubic-bezier(.65,0,.35,1);will-change:transform;}
.t-track.is-drag{transition:none;}
.t-card{flex:0 0 84%;min-width:0;display:flex;align-items:stretch;border-radius:12px;overflow:hidden;
  background:var(--white);border:1.5px solid #C4BEB2;position:relative;padding:0;
  transition:border-color .3s ease, box-shadow .3s ease;}
.t-card::before{content:'';position:absolute;left:0;top:0;height:3px;width:0;
  background-image:var(--accent-bar);transition:width .45s ease;z-index:2;}
.t-card:hover{border-color:var(--blue);box-shadow:0 16px 36px rgba(4,24,39,.10);}
.t-card:hover::before{width:100%;}
.t-text{flex:1 1 67%;display:flex;flex-direction:column;justify-content:flex-start;padding:2.4rem 2.2rem;}
.t-text p{font-size:1rem;color:var(--grey-text);margin:0;}
.t-text footer{margin-top:1.4rem;font-weight:600;font-size:.9rem;color:var(--navy);}
.t-photo{flex:0 0 33%;position:relative;min-height:100%;}
.t-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;border-radius:0;pointer-events:none;-webkit-user-drag:none;}
@media(max-width:760px){
  .t-slider{margin-top:2rem;}
  .t-card{flex:0 0 84% !important;flex-direction:column;}
  .t-text{padding:1.6rem 1.3rem;}
  .t-photo{flex:none;height:180px;min-height:180px;order:-1;}
}

.cols-4 .pillar:nth-child(3) .p-icon{transform:scale(1.25);}

.pillar-photo{padding:0;overflow:hidden;display:block;}
.pillar-photo img{width:100%;height:100%;object-fit:cover;display:block;min-height:100%;}
@media(max-width:900px){.pillar-photo{display:none;}}

.t-text h4{font-family:var(--serif);font-size:1.15rem;font-weight:600;color:var(--navy);margin:0 0 .8rem;line-height:1.3;}

@media(max-width:600px){.legal h2{white-space:normal;font-size:1.1rem;}}

.hero,.page-hero{background-size:cover;background-position:center;}

.hero-inner,.page-hero .container{position:relative;z-index:2;}

/* Hero photo: same scale and crop on every page, whatever the banner's height.
   "cover" would rescale the photo to each banner's height on narrower screens, so instead the photo is
   always the full banner width (at least 1040px, enough for the tallest banner on any page at 320px wide),
   pinned to the top centre. The navy colour only shows if a future banner ever grows taller than the photo. */
.hero, .page-hero {
  background-size: max(100%, 1040px) auto !important;
  background-position: center top !important;
  background-color: #1E3A5F !important;
}

/* Insights: on desktop, a last article left alone on its row takes the lead card's layout
   (text left, picture right). The lead is child 1, so a lone last card is always an even child. */
@media(min-width:761px){
  .news-card:last-child:nth-child(even){grid-column:1 / -1;flex-direction:row;align-items:stretch;}
  .news-card:last-child:nth-child(even) .news-card-body{order:0;flex:1 1 50%;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:2.4rem 2.2rem 2.6rem;}
  .news-card:last-child:nth-child(even) .news-thumb{order:1;flex:1 1 50%;width:50%;min-width:0;height:auto;aspect-ratio:auto;contain:size;min-height:260px;max-height:420px;object-fit:cover;align-self:stretch;}
  .news-card:last-child:nth-child(even) h3{font-size:clamp(1.5rem,2.8vw,2.1rem);max-width:22ch;}
  .news-card:last-child:nth-child(even) p{max-width:62ch;font-size:1rem;}
}

/* Hero body text: phones keep 16px (the banner is narrow), the weight/colour/shadow changes still apply. */
@media(max-width:760px){.hero p,.page-hero p{font-size:1rem;}}
