/* Shared community guide presentation. Scoped to the two pilot pages. */
.coast-guide-page{background:#f6f3ec;color:#112039}
.coast-guide-page header.cg-hero{max-width:none;margin:0;padding:0!important;background:#10213b;color:#fff;text-align:left;border:0}
.coast-guide-page .cg-hero :is(h1,.lead,.cg-eyebrow,.cg-byline){text-align:left}
.cg-hero-inner{max-width:1240px;margin:auto;display:grid;grid-template-columns:1.06fr 1fr;align-items:center;gap:52px;padding:64px 32px 44px}
.coast-guide-page .cg-hero .cg-eyebrow{color:#e4c36b;font:600 10px/1.65 Inter,Arial,sans-serif;letter-spacing:2.2px;margin:0 0 16px}
.coast-guide-page .cg-hero h1{color:#fff;font:500 clamp(44px,4.6vw,70px)/1.08 'Playfair Display',Georgia,serif;margin:22px 0 14px;letter-spacing:-1.7px;max-width:650px}
.cg-hero-line{display:block;font:italic 400 clamp(25px,2.5vw,36px)/1.3 'Playfair Display',Georgia,serif;color:#e4c36b;margin-bottom:22px}
.coast-guide-page .cg-hero .lead{font-size:16px;line-height:1.8;color:#e1e7ee;margin:0 0 26px;max-width:550px}
.cg-hero-media{margin:0;min-width:0;position:relative;padding:12px;border:1px solid #bb965153;background:#142c47}
.cg-hero-media picture{display:block;line-height:0}
.cg-hero-media img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.cg-hero-media figcaption{font:400 11px/1.6 Inter,Arial,sans-serif;color:#cfdae5;padding:12px 3px 2px;text-align:left}
.cg-hero-media figcaption a{color:inherit;text-decoration:underline}
.coast-guide-page .cg-hero .cg-byline{color:#c9d4e1;font:400 12px/1.8 Inter,Arial,sans-serif;margin:25px 0 0}
.cg-byline a{color:#e8c777;text-decoration:underline;text-underline-offset:4px}
.coast-guide-page main.cg-guide{display:block;width:calc(100% - 64px);max-width:1176px;margin:0 auto;padding:48px 0 80px;color:#112039;box-sizing:border-box}
.cg-guide *,.cg-hero *{box-sizing:border-box}
.cg-guide :is(p,ul,ol,figure,blockquote){max-width:none}
.cg-guide p,.cg-guide li{font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.8;color:#40516a}
.cg-guide p{margin:0 0 18px}
.cg-guide a{color:#705318;text-underline-offset:4px}
.cg-guide :is(h2,h3){font-family:'Playfair Display',Georgia,serif;color:#112039;border:0;padding:0;font-weight:500;letter-spacing:-.6px}
.cg-guide h2{font-size:clamp(30px,3.2vw,43px);line-height:1.18;margin:0 0 22px}
.cg-guide h3{font-size:25px;line-height:1.35;margin:0 0 12px}
.cg-eyebrow,.cg-guide .cg-eyebrow{font:600 10px/1.65 Inter,Arial,sans-serif;letter-spacing:2.2px;text-transform:uppercase;color:#806022;margin:0 0 16px}
.cg-guide .quick-answer{background:white;border:1px solid #dce0e4;border-left:3px solid #b38a39;border-radius:0;padding:28px 32px;margin:0;box-shadow:0 12px 34px #15223a06}
.cg-guide .quick-answer .qa-label{color:#806022;font:600 11px/1.5 Inter,Arial,sans-serif;letter-spacing:1px;text-transform:uppercase}
.cg-guide .quick-answer p{font-size:17px;color:#253950;margin:12px 0}
.cg-guide .quick-answer .qa-by{font-size:12px;color:#617088}
.cg-guide .quick-answer{max-width:none}
.cg-guide .cg-cta .cg-fine a{color:#f1d184}
.cg-guide .cg-jumps{display:flex;gap:12px 26px;flex-wrap:wrap;padding:19px 2px;margin:0 0 44px;border-bottom:1px solid #d3d9df;justify-content:center}
.cg-jumps a{font:600 12px/1.8 Inter,Arial,sans-serif;color:#344960;white-space:nowrap;text-decoration:none;padding:5px 0}
.cg-jumps a:hover{text-decoration:underline}
.cg-guide section[id],.cg-guide details{scroll-margin-top:175px}
.cg-section{padding:55px 0;border-bottom:1px solid #d3d9df}
.cg-section:first-of-type{padding-top:0}
.cg-intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-bottom:27px}
.cg-intro p{margin:0;text-wrap:pretty}
.cg-intro h2{margin-bottom:0}
.cg-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d2d8df;border:1px solid #d2d8df;margin-top:30px}
.cg-facts>div{background:#fff;padding:24px}
.cg-facts strong{font:500 25px/1.3 'Playfair Display',Georgia,serif;display:block;margin-bottom:9px}
.cg-facts p{font-size:14px;line-height:1.65;margin-bottom:0}
.cg-guide .cg-fine{font-size:12px;line-height:1.7;color:#5f6d7b;margin-top:15px}
.cg-table-wrap{overflow-x:auto;border:1px solid #d3d9df;background:white}
.cg-guide table{border-collapse:collapse;width:100%;margin:0;table-layout:fixed;font:400 14px/1.7 Inter,Arial,sans-serif}
.cg-guide th{background:#14273f;color:#f1d081;text-align:left;font:600 12px/1.5 Inter,Arial,sans-serif;padding:18px 20px;border:0}
.cg-guide td{color:#40516a;padding:24px 20px;vertical-align:top;border:0;border-bottom:1px solid #dce0e4}
.cg-guide tr:last-child td{border-bottom:0}
.cg-guide td:first-child{color:#162b45;font-weight:600;width:24%}
.cg-guide tbody tr:nth-child(even){background:#f6f7f8}
.cg-guide caption{text-align:left;padding:12px 20px;color:#5f6d7b;font-size:12px;background:#fff;caption-side:bottom}
.cg-guide .cg-perspective{background:#e9edf0;border-left:3px solid #ae8535;padding:26px 30px;margin-top:30px}
.cg-perspective p:last-child{margin-bottom:0}
.cg-place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.cg-place{padding:30px;border:1px solid #d5dbe0;background:#fff}
.cg-place .cg-eyebrow{font-size:9px;letter-spacing:1.5px}
.cg-place .cg-question{font-size:14px;color:#112d46;border-top:1px solid #dce0e4;margin:20px 0 0;padding-top:16px}
.cg-guide .cg-note{padding:23px 26px;background:#eef0ed;color:#344b5d;margin:24px 0 0;font-size:14px}
.cg-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.cg-cost-grid article{border-top:2px solid #c19a45;padding:25px 0 0}
.cg-cost-grid ul{padding-left:19px;margin:0}
.cg-cost-grid li{font-size:14px;line-height:1.8;margin-bottom:10px}
.cg-guide .cg-link-row{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:26px}
.cg-link-row a{font:600 13px/1.8 Inter,Arial,sans-serif}
.cg-school-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:25px 0}
.cg-school{padding:24px;background:white;border:1px solid #d1d9df;display:flex;gap:16px;align-items:flex-start;text-decoration:none}
.cg-school span{min-width:0}
.cg-school strong{display:block;color:#112039;font:600 14px/1.5 Inter,Arial,sans-serif}
.cg-school small{display:block;color:#586b80;font:400 11px/1.7 Inter,Arial,sans-serif;margin-top:7px}
.cg-school .cg-grade{flex:none;width:42px;height:42px;display:grid;place-items:center;background:#deedd6;color:#1c442b;font:700 24px/1 Inter,Arial,sans-serif}
.cg-school .cg-grade-c{background:#f8e7bc;color:#593c0b}
.cg-guide .cg-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.cg-route{background:white;border:1px solid #d6dce1;padding:27px}
.cg-route p{font-size:14px}
.cg-guide .cg-faq details{border:0;border-bottom:1px solid #cad3da;border-radius:0;background:transparent;padding:18px 0;margin:0}
.cg-guide .cg-faq summary{color:#112039;font:600 16px/1.6 Inter,Arial,sans-serif;padding:5px 28px 5px 0;cursor:pointer}
.cg-guide .cg-faq details p{font-size:15px;margin:13px 0 8px;max-width:900px}
.cg-guide .cg-cta{background:#11243d;color:white;display:grid;grid-template-columns:80px 1fr;gap:24px;padding:38px;margin:46px 0 0;border:1px solid #b8964a}
.cg-cta .cg-eyebrow{color:#e3c06d}
.cg-cta h2{color:white;font-size:34px}
.cg-cta p{color:#d2deea}
.cg-cta img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:1px solid #d6b366}
.cg-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.coast-guide-page .cg-button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:14px 20px;background:#d1ae56;color:#10213b;border:1px solid #d1ae56;border-radius:0;text-decoration:none;font:600 13px/1.5 Inter,Arial,sans-serif;text-align:center;cursor:pointer}
.coast-guide-page .cg-button:hover{background:#e3c477;border-color:#e3c477}
.coast-guide-page .cg-button-secondary{background:transparent;color:#f1d184;border-color:#cbb77b80}
.coast-guide-page .cg-button-secondary:hover{background:#ffffff10;color:white}
.cg-guide .cg-sources{padding-top:35px}
.cg-sources h2{font-size:26px}
.cg-sources ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;padding:0;list-style:none}
.cg-sources li{font-size:12px;line-height:1.7}
.cg-sources li span{display:block;color:#627285}
.cg-guide .geo-guide{margin:32px 0;padding:30px;background:#e8edef;border:1px solid #d0d9dc}
.cg-guide .geo-guide h2{font-size:27px}
.cg-guide .geo-guide p{font-size:14px}
.cg-guide .geo-links{display:flex;flex-wrap:wrap;gap:12px 22px;font-size:13px}
.cg-guide .cg-retained-links{padding-top:35px}
.cg-guide .cg-retained-links h2{font-size:25px;margin-top:25px}
.cg-guide .cg-retained-links a{color:#72551c}
.cg-guide .cg-retained-links .related a{background:#fff;border-color:#d3d9df}
.coast-guide-page :is(.cg-guide,.cg-hero) :focus-visible{outline:3px solid #b68017;outline-offset:5px}
@media(min-width:1500px){.cg-hero-inner{padding-top:80px;padding-bottom:60px}}
@media(max-width:900px){.cg-hero-inner{gap:30px;padding:44px 28px}.cg-hero-line{font-size:26px}.cg-hero h1{font-size:48px}.cg-hero-media img{aspect-ratio:3/4}.cg-intro{gap:30px}.cg-school-grid{grid-template-columns:1fr}.cg-school{align-items:center}.cg-cost-grid{gap:20px}.cg-guide th,.cg-guide td{padding:18px 15px}}
@media(max-width:680px){.cg-hero-inner{grid-template-columns:1fr;padding:38px 22px 30px;gap:30px}.coast-guide-page .cg-hero h1{font-size:47px;letter-spacing:-1.2px}.cg-hero-media img{aspect-ratio:4/3}.coast-guide-page main.cg-guide{width:calc(100% - 40px);padding-top:26px}.cg-guide .quick-answer{padding:22px}.cg-guide .quick-answer p{font-size:15px}.cg-guide .cg-jumps{gap:5px 17px;margin-bottom:29px;justify-content:flex-start}.cg-section{padding:36px 0}.cg-intro{grid-template-columns:1fr;gap:20px}.cg-facts,.cg-cost-grid,.cg-place-grid,.cg-guide .cg-route-grid{grid-template-columns:1fr}.cg-facts{margin-top:23px}.cg-facts>div{padding:22px}.cg-place{padding:24px}.cg-guide .cg-perspective{padding:22px}.cg-cost-grid{gap:15px}.cg-guide table{table-layout:auto;min-width:680px}.cg-guide .cg-cta{grid-template-columns:1fr;padding:27px;gap:16px}.cg-cta h2{font-size:30px}.cg-cta img{width:65px;height:65px}.cg-sources ul{grid-template-columns:1fr}.cg-buttons{flex-direction:column;align-items:stretch}.cg-guide p{font-size:15px}}
@media(prefers-reduced-motion:reduce){.coast-guide-page{scroll-behavior:auto}}
/* Older static shells use important mobile rules. Keep the override local to these guides. */
.coast-guide-page main.cg-guide{padding:48px 0 80px!important}
.cg-guide>*,.cg-guide :is(p,ul,ol,details,blockquote,h2,h3){max-width:none!important}
.cg-guide :is(p,ul,ol,details,blockquote,h2,h3){margin-left:0!important;margin-right:0!important}
.cg-guide h2{display:block;font-size:clamp(30px,3.2vw,43px)!important;margin:0 0 22px!important}
.cg-guide h2::before{display:none}
.cg-guide h3{font-size:25px!important;margin:0 0 12px!important}
.cg-guide .cg-cta h2{font-size:34px!important}
.cg-guide .cg-sources h2,.cg-guide .cg-retained-links h2{font-size:26px!important}
.cg-guide .geo-guide h2{font-size:27px!important}
@media(max-width:680px){
  .coast-guide-page main.cg-guide{padding:26px 0 64px!important}
  .cg-guide .cg-cta h2{font-size:30px!important}
  .coast-guide-page header.cg-hero h1{font-size:42px!important}
  .coast-guide-page:not(.gc-page) .main-banner .banner-row{grid-template-columns:minmax(0,.75fr) auto minmax(0,1fr);gap:8px;padding:10px 12px 0}
  .coast-guide-page:not(.gc-page) .main-banner .banner-lrr img,.coast-guide-page:not(.gc-page) .main-banner .banner-logo img{height:36px!important;max-width:100%}
  .coast-guide-page:not(.gc-page) .main-banner .banner-phone{font-size:12px!important;letter-spacing:0}
  .coast-guide-page:not(.gc-page) .main-banner .banner-email{font-size:9px!important;letter-spacing:0}
}
