/* Starfish.family visual Family Map: concise, responsive and progressive */
.map-header-links{margin-left:auto;display:flex;gap:22px;align-items:center}.map-header-links a{font-size:.83rem;font-weight:750;text-decoration:none}.map-header-links a:hover{color:#ba6b40}.map-back{display:inline-flex;align-items:center;gap:12px;border-radius:5px;color:white;background:#174456;text-decoration:none;font-weight:800;font-size:.82rem;padding:10px 13px}.map-hero{background:radial-gradient(circle at 75% 25%,#376a75,#143446 60%,#102c3d);color:white;overflow:hidden}.map-hero-layout{display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:clamp(45px,6vw,85px);padding:76px 0}.map-crumb{display:inline-block;color:#f7c692;text-decoration:none;font-size:.82rem;font-weight:760;margin:0 0 24px}.map-lead h1{font-size:clamp(3.3rem,5.7vw,6rem);line-height:1.02;letter-spacing:-.075em;margin:13px 0 23px}.map-lead h1 em{color:#ffd19a}.map-hero-description{color:#e0ecec;font-size:1.07rem;max-width:680px;margin-bottom:28px}.map-hero-images{height:370px;position:relative;min-width:0}.map-hero-images img{position:absolute;border-radius:11px;border:4px solid #f9e6d5e0;box-shadow:0 18px 38px #071e2c80;object-fit:cover}.map-hero-images img:nth-child(1){width:68%;height:73%;left:0;top:0;transform:rotate(-4deg)}.map-hero-images img:nth-child(2){width:59%;height:67%;right:0;top:20%;transform:rotate(6deg)}.map-hero-images img:nth-child(3){width:47%;height:45%;left:12%;bottom:0;transform:rotate(-1deg)}.map-image-caption{position:absolute;right:0;bottom:-16px;font-family:Georgia,serif;font-size:1.35rem;line-height:1.28;color:#ffd3a4;font-style:italic;text-align:right;text-shadow:0 2px 8px #072432}.map-understanding{padding:77px 0 85px;text-align:center}.map-understanding h2{margin:13px 0 32px}.map-chain{display:flex;align-items:stretch;justify-content:center;gap:7px}.map-chain a{display:flex;flex:1;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;padding:21px 8px;border-radius:9px;border:1px solid #dbe5e2;background:#f3f6f3;text-decoration:none;transition:transform .2s}.map-chain a:hover{transform:translateY(-3px);background:#eaf3ef}.map-chain a>span{font-size:.7rem;color:#be7345;font-weight:900}.map-chain a strong{font-size:1.3rem;letter-spacing:-.04em}.map-chain a small{color:#607681;font-size:.75rem}.chain-join{align-self:center;flex:0 0 20px;color:#cc8a5b;font-size:1.3rem}.map-disclaimer{color:#667d83;font-size:.8rem;margin:24px auto 0;max-width:730px}.map-experiences{padding:84px 0 94px;background:#f4f0e8}.map-section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:35px;align-items:end;margin-bottom:29px}.map-section-heading h2{margin:12px 0 0}.map-section-heading>p{color:#617681;font-size:.94rem;max-width:365px;justify-self:end}.map-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.map-tabs[hidden]{display:none}.map-tabs button{border:1px solid #c5d4d3;color:#345969;background:white;border-radius:50px;font-size:.81rem;font-weight:810;cursor:pointer;padding:10px 17px}.map-tabs button[aria-selected="true"]{background:#1a4456;color:#fff;border-color:#1a4456}.map-tabs button:hover:not([aria-selected="true"]){background:#fff4e8}.map-panels{display:grid;gap:18px}.map-panel{display:grid;grid-template-columns:.94fr 1.06fr;gap:0;background:white;border:1px solid #dbe3df;border-radius:12px;overflow:hidden;min-height:355px;scroll-margin-top:88px}.map-panel[hidden]{display:none}.map-panel-visual{position:relative;min-height:320px;background:#395765}.map-panel-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.map-panel-content{padding:clamp(27px,4vw,50px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.map-panel-kicker{font-size:.67rem;letter-spacing:.15em;font-weight:890;color:#b26a3f}.map-panel h3{font-size:clamp(2rem,3vw,3rem);line-height:1.11;margin:13px 0 17px}.map-panel p{color:#5d737e;font-size:.98rem;margin-bottom:23px}.map-links,.map-developing{display:flex;flex-wrap:wrap;gap:7px}.map-links a,.map-developing span{font-size:.79rem;text-decoration:none;color:#365868;font-weight:780;border:1px solid #c8d8d6;padding:7px 11px;border-radius:5px;background:#f4f7f4}.map-links a:hover{color:#ab633a;background:#fff2e5;border-color:#e6bb94}.map-developing span{color:#836a54;background:#fcf3e7;border-color:#e6d1bb}.map-home-link{font-size:.83rem;color:#ad6338;font-weight:830;text-decoration:none;margin-top:22px;border-bottom:1px solid currentColor}.map-availability{color:#617681;font-size:.8rem;margin:23px 0 0}.map-end{background:#15394d;color:white;padding:67px 0}.map-end-inner{display:flex;justify-content:space-between;gap:3rem;align-items:center}.map-end h2{font-size:clamp(2.4rem,4.3vw,4.1rem);margin:12px 0}.map-end h2 em{color:#ffca8a}.map-end p:not(.eyebrow){color:#d3e1e5;max-width:600px;font-size:.97rem}.map-end-actions{min-width:215px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.map-end-actions>a:not(.button){color:#ffd2a2;text-decoration:none;font-size:.87rem;font-weight:800}
@media(max-width:990px){.map-header-links{gap:10px}.map-header-links a{font-size:.75rem}.map-hero-layout{grid-template-columns:1.1fr .8fr}.map-hero-images{height:310px}.map-panel{grid-template-columns:1fr 1.1fr}.map-panel-content{padding:26px}.map-panel-visual{min-height:290px}}
@media(max-width:720px){.map-header-links{display:none}.map-back{margin-left:auto;font-size:.77rem}.map-hero-layout{display:block;padding:55px 0 48px}.map-lead h1{font-size:clamp(3rem,10.5vw,4.7rem)}.map-hero-images{height:280px;max-width:470px;margin:35px auto 0}.map-image-caption{font-size:1.1rem}.map-understanding{padding:59px 0}.map-chain{display:grid;grid-template-columns:1fr 22px 1fr;gap:8px}.map-chain a{min-height:118px}.map-chain a:nth-of-type(3){grid-column:1}.map-chain a:nth-of-type(4){grid-column:3}.map-chain .chain-join:nth-of-type(2){display:none}.map-chain .chain-join:nth-of-type(3){grid-column:2}.map-experiences{padding:62px 0 74px}.map-section-heading{display:block}.map-section-heading>p{margin:14px 0 0}.map-tabs button{padding:9px 12px;font-size:.76rem}.map-panel{grid-template-columns:1fr}.map-panel-visual{min-height:240px}.map-panel-content{padding:25px}.map-panel h3{font-size:2.15rem}.map-end{padding:59px 0}.map-end-inner{display:block}.map-end-actions{margin-top:24px}}
@media(max-width:430px){.map-chain{grid-template-columns:1fr}.map-chain a,.map-chain a:nth-of-type(3),.map-chain a:nth-of-type(4){grid-column:1}.chain-join,.map-chain .chain-join:nth-of-type(3){grid-column:1;justify-self:center;transform:rotate(90deg)}.map-chain .chain-join:nth-of-type(2){display:block}}
@media(prefers-reduced-motion:reduce){.map-chain a{transition:none}.map-chain a:hover{transform:none}}


/* SF-013: Family Map header belongs to the same navigation system. */
.site-header .map-header-links{gap:8px;margin-left:auto}
.site-header .map-header-links a{
 display:inline-flex;align-items:center;justify-content:center;min-height:41px;
 padding:9px 13px;background:#f7faf8;border:1px solid #dce7e5;border-radius:999px;
 color:#244b5c;font-size:.8rem;font-weight:730;text-decoration:none;white-space:nowrap;line-height:1.2;
 box-shadow:0 2px 7px rgba(16,63,77,.035);
 transition:background-color .18s,border-color .18s,transform .18s
}
.site-header .map-header-links a:hover{color:#173d51;background:white;border-color:#d8b18d;transform:translateY(-1px)}
.site-header .map-back{
 display:inline-flex;align-items:center;gap:10px;min-height:44px;white-space:nowrap;
 padding:9px 17px;border-radius:999px;background:#173b50;border:1px solid #194559;
 color:#fffaf5;font-size:.79rem;font-weight:780;line-height:1.2;
 box-shadow:0 6px 15px rgba(12,51,74,.13);
 transition:background-color .18s,transform .18s
}
.site-header .map-back:hover{background:#23546b;color:white;transform:translateY(-1px)}
.site-header .map-header-links a:focus-visible,.site-header .map-back:focus-visible{outline:3px solid #e79b56;outline-offset:3px}
@media(max-width:1100px){.site-header .map-header-links{display:none}.site-header .map-back{margin-left:auto}}
@media(max-width:620px){.site-header .map-back{font-size:.74rem;min-height:42px;padding:8px 12px}}
@media(prefers-reduced-motion:reduce){.site-header .map-header-links a,.site-header .map-back{transition:none}.site-header .map-header-links a:hover,.site-header .map-back:hover{transform:none}}
