.direction-subhero{background:linear-gradient(135deg,#f3fcff,#e8f9fb)}
.directions-archive-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f3fcff,#e8f9fb)}
.directions-archive-hero:after{content:"";position:absolute;right:-45px;top:-35px;width:470px;height:400px;background:url(../images/leaves-natural.png) center/contain no-repeat;pointer-events:none}
.directions-archive-hero__inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:60px;min-height:350px;padding:62px 0}
.directions-archive-hero__copy{max-width:780px}
.directions-archive-hero h1{margin:14px 0 18px}
.directions-archive-hero p{max-width:700px;margin:0;color:#38566d;font-size:18px;line-height:1.65}
.directions-archive-hero .handwriting{max-width:320px;margin-right:70px;text-align:center;font-size:31px}
.directions-archive-section{padding:72px 0 82px}
.directions-archive-head{display:flex;align-items:end;justify-content:space-between;gap:42px;margin-bottom:30px}
.directions-archive-head h2{margin-top:10px}
.directions-archive-head>p{max-width:470px;margin:0;color:#526e80;font-size:14px;line-height:1.65}
.directions-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.direction-tile{position:relative;min-height:360px;overflow:hidden;border-radius:22px;background:#075f80;box-shadow:0 14px 34px rgba(5,53,82,.12)}
.direction-tile>a{position:absolute;inset:0;display:block;color:#fff}
.direction-tile img{width:100%;height:100%;transition:transform .45s ease}
.direction-tile__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,34,54,.03) 28%,rgba(3,35,57,.9) 100%)}
.direction-tile__content{position:absolute;left:0;right:0;bottom:0;display:flex;min-height:176px;padding:27px;flex-direction:column;justify-content:flex-end}
.direction-tile__title{color:#fff;font-size:31px;font-weight:850;line-height:1.05;letter-spacing:-.035em}
.direction-tile__subtitle{margin-top:8px;color:#e6f7fb;font-size:13px;line-height:1.45}
.direction-tile__link{display:inline-flex;align-items:center;gap:7px;margin-top:18px;color:#fff;font-size:12px;font-weight:800}
.direction-tile__link .amigo-icon{width:16px;height:16px}
.direction-tile:hover img{transform:scale(1.045)}
.direction-tile:hover .direction-tile__link{color:#ffb570}
.directions-archive-cta{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:42px;padding:38px 42px;border-radius:24px;background:var(--navy);color:#fff}
.directions-archive-cta h2{margin:9px 0 10px;color:#fff;font-size:34px}
.directions-archive-cta p{max-width:700px;margin:0;color:#d9eef4}
.directions-archive-cta .btn{flex:none}
.direction-page .content-entry{max-width:1180px}
.direction-intro{max-width:820px!important;margin:0 auto 48px!important}
.direction-intro p{font-size:17px;line-height:1.75;color:#38566d}
.direction-page .content-entry>h2{max-width:1180px;margin:0 auto 24px}
.direction-map{max-width:1180px!important;margin:0 auto 56px!important;padding:28px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 12px 34px rgba(4,47,76,.08);overflow-x:auto}
.direction-map__head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:20px}
.direction-map__head h2{margin:8px 0 0;font-size:32px}
.direction-map__head p{max-width:390px;margin:0;color:#526e80;font-size:13px;text-align:right}
.map-canvas{position:relative;overflow:hidden;border-radius:19px;background:#eaf8fd;aspect-ratio:1000/430}
.map-canvas>svg{display:block;width:100%;height:100%}
.map-canvas [data-map-region]{transition:filter .2s,transform .2s;transform-origin:center}
.map-canvas [data-map-region].is-active{filter:saturate(1.3) brightness(.93);transform:scale(1.025)}
.map-pin{position:absolute;left:var(--map-x);top:var(--map-y);z-index:2;transform:translate(-50%,-50%);display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid rgba(255,255,255,.86);border-radius:999px;background:#fff;color:var(--navy);box-shadow:0 5px 14px rgba(4,47,76,.2);font:750 11px/1.2 Montserrat,Arial,sans-serif;white-space:nowrap;cursor:pointer;transition:transform .18s,background .18s,color .18s}
.map-pin span{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 0 4px rgba(244,119,22,.16)}
.map-pin:hover,.map-pin:focus-visible,.map-pin.is-active{transform:translate(-50%,-50%) scale(1.06);background:var(--navy);color:#fff}
.direction-card{transition:border-color .2s,box-shadow .2s,transform .2s}
.direction-card.is-highlighted{border-color:var(--orange);box-shadow:0 13px 34px rgba(244,119,22,.2);transform:translateY(-3px)}
.direction-grid{max-width:1180px!important;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 auto 50px!important}
.direction-card{padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 8px 24px #073e620b}
.direction-card h3{margin:0 0 11px;font-size:21px}
.direction-card p{margin:0;color:#48657a;font-size:14px;line-height:1.65}
.direction-info-grid{max-width:1180px!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:0 auto 36px!important}
.direction-info{padding:28px;border-radius:20px;background:var(--pale)}
.direction-info h2{margin:0 0 15px;font-size:27px}
.direction-info p,.direction-info li{color:#405e73;line-height:1.7}
.direction-info p{margin-bottom:0}
.direction-info ul{margin-bottom:0;padding-left:20px}
.direction-callout{max-width:950px!important;margin:40px auto 0!important;padding:32px 36px;border-radius:22px;background:var(--navy);color:#fff}
.direction-callout h2{margin:0 0 9px;color:#fff;font-size:30px}
.direction-callout p{margin:0;color:#d9eef4}
.direction-action{max-width:950px!important;margin:18px auto 0!important}
.direction-action .btn{min-width:190px}
@media(max-width:1050px){.directions-archive-hero__inner{min-height:320px}.directions-archive-hero .handwriting{display:none}.directions-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.direction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.directions-archive-hero:after{display:none}.directions-archive-hero__inner{min-height:auto;padding:52px 0}.directions-archive-hero h1{font-size:42px}.directions-archive-hero p{font-size:15px}.directions-archive-section{padding:54px 0 62px}.directions-archive-head{display:block;margin-bottom:22px}.directions-archive-head>p{margin-top:12px}.directions-archive-grid{grid-template-columns:1fr;gap:14px}.direction-tile{min-height:310px}.direction-tile__content{padding:23px}.direction-tile__title{font-size:28px}.directions-archive-cta{display:block;margin-top:30px;padding:27px 23px}.directions-archive-cta h2{font-size:29px}.directions-archive-cta .btn{width:100%;margin-top:22px}.direction-intro{margin-bottom:34px!important}.direction-intro p{font-size:15px}.direction-map{margin-bottom:38px!important;padding:17px}.direction-map__head{display:block;position:sticky;left:0;width:calc(100vw - 70px)}.direction-map__head h2{font-size:27px}.direction-map__head p{margin-top:9px;text-align:left}.map-canvas{width:700px;max-width:none;margin-top:16px}.map-pin{font-size:9px;padding:6px 7px}.map-pin span{width:7px;height:7px}.direction-grid,.direction-info-grid{grid-template-columns:1fr;gap:12px}.direction-grid{margin-bottom:38px!important}.direction-card,.direction-info{padding:21px}.direction-callout{padding:25px}.direction-callout h2{font-size:27px}.direction-action .btn{width:100%}}
