.info-shell{max-width:1000px;padding:76px 0 110px}.info-shell h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(46px,5vw,72px);line-height:1.08;font-weight:600;color:var(--navy);letter-spacing:-.04em;margin:12px 0 24px}.info-lead{font-size:17px;line-height:1.85;color:#526b79;max-width:72ch}.info-quick{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 45px}.info-quick a,.info-quick span{border:1px solid #dce6e3;background:#fffdf9;color:var(--navy);border-radius:5px;padding:10px 14px;text-decoration:none;font-weight:700;font-size:12px}.info-panel{background:#fffdf9;border:1px solid #dce6e3;border-radius:8px;padding:clamp(24px,4vw,42px);margin:22px 0;box-shadow:0 14px 40px rgba(6,35,63,.045)}.info-panel h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(27px,3vw,37px);line-height:1.2;font-weight:600;color:var(--navy);margin:0 0 15px}.info-panel h3{font-family:'Manrope',sans-serif;color:var(--navy);font-size:17px;margin:22px 0 8px}.info-panel p,.info-panel li{color:#506777;line-height:1.85}.info-panel ul{padding-left:22px}.info-panel a{color:#a9581a;text-underline-offset:3px}.info-alert{border-left:4px solid var(--orange);background:#fff5e8;padding:18px 22px;border-radius:0 6px 6px 0;color:#644e3a;line-height:1.75;margin:30px 0}.info-faq details{border-top:1px solid #e2e9e7;padding:20px 0}.info-faq details:last-child{border-bottom:1px solid #e2e9e7}.info-faq summary{font-family:'Manrope',sans-serif;font-weight:800;color:var(--navy);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.info-faq summary::-webkit-details-marker{display:none}.info-faq summary::after{content:'+';color:var(--orange);font-size:22px;line-height:1}.info-faq details[open] summary::after{content:'−'}.info-faq details p{margin:12px 0 0}.source-list{display:grid;gap:18px}.source-item{display:grid;grid-template-columns:170px 1fr;gap:22px;align-items:center}.source-item img{width:170px;height:110px;object-fit:cover;border-radius:5px}.source-item h2{font-size:24px;margin:0 0 8px}.source-item p{margin:4px 0}.footer-policy-links{display:flex;justify-content:flex-end;gap:16px;flex-wrap:wrap;padding-top:16px;padding-bottom:8px;border-top:1px solid rgba(255,255,255,.13)}.footer-policy-links a{font-size:11px;letter-spacing:.03em;color:#dce9ee;text-decoration:none}.footer-policy-links a:hover{text-decoration:underline;color:#fff}@media(max-width:650px){.info-shell{padding:50px 0 80px}.source-item{grid-template-columns:1fr}.source-item img{width:100%;height:180px}.footer-policy-links{justify-content:flex-start}}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:35px 0}
.contact-grid .info-panel{margin:0}
.contact-grid address{font-style:normal;line-height:1.9;margin:18px 0}
.contact-link{color:#0a5e99;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.contact-fine{font-size:13px;color:#63758b}
.agency-footer{border-top:1px solid rgba(255,255,255,.16);padding:18px 0;color:#e6edf3;font-size:12px;line-height:1.7}
.agency-footer a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.contact-cta{background:#082d59;color:#fff;padding:65px 0}
.contact-cta>.container{display:flex;align-items:center;justify-content:space-between;gap:35px}
.contact-cta h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(34px,4vw,52px);font-weight:600;max-width:750px;margin:12px 0}
.contact-cta p{color:#dbe9ed;margin:0}
.contact-cta .button{flex:none}
.detail-contact-link{display:block;margin-top:14px;color:#0a5e99;font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.contact-cta>.container{display:block}.contact-cta .button{margin-top:24px}}
@media(max-width:760px){.contact-grid{grid-template-columns:1fr}}
.keyword-routes{padding:clamp(76px,8vw,116px) 0;background:#f6f3ed}
.keyword-route-heading{display:flex;justify-content:space-between;align-items:end;gap:38px;margin-bottom:34px}
.keyword-routes h2{font-family:'Playfair Display',Georgia,serif;font-size:clamp(38px,4.4vw,58px);line-height:1.13;font-weight:600;letter-spacing:-.035em;color:#082d59;margin:12px 0 0}
.keyword-route-heading>p{max-width:350px;margin:0 0 7px;color:#607587;font-size:15px;line-height:1.7}
.keyword-route-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.keyword-route-card{position:relative;isolation:isolate;min-height:350px;overflow:hidden;border-radius:12px;background:#082d59;box-shadow:0 22px 45px rgba(4,31,56,.12)}
.keyword-route-card::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(4,23,46,.04) 15%,rgba(4,23,46,.46) 48%,rgba(4,23,46,.94) 100%)}
.keyword-route-card img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.keyword-route-card:hover img{transform:scale(1.055)}
.keyword-route-card-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:350px;padding:clamp(26px,3.2vw,42px)}
.keyword-route-label{display:inline-block;padding:7px 11px;border:1px solid rgba(255,255,255,.42);border-radius:3px;background:rgba(6,38,72,.26);color:#fff;font-size:10px;font-weight:800;letter-spacing:.14em;backdrop-filter:blur(5px)}
.keyword-route-card h3{font-family:'Playfair Display',Georgia,serif;font-size:clamp(26px,2.4vw,36px);font-weight:600;line-height:1.17;letter-spacing:-.02em;color:#fff;margin:16px 0 9px;text-wrap:balance}
.keyword-route-card p{font-size:14px;line-height:1.65;color:rgba(255,255,255,.88);margin:0;max-width:44ch}
.keyword-route-card a{display:inline-flex;align-items:center;gap:20px;margin-top:21px;padding:10px 0;border-bottom:1px solid #ffab6a;color:#fff;font-size:13px;font-weight:800;text-decoration:none;transition:gap .2s ease,color .2s ease}
.keyword-route-card a span{color:#ffab6a;font-size:19px;line-height:1}
.keyword-route-card a:hover,.keyword-route-card a:focus-visible{gap:27px;color:#ffd3b0}
@media(max-width:800px){.keyword-route-heading{display:block}.keyword-route-heading>p{margin-top:15px}.keyword-route-card,.keyword-route-card-content{min-height:320px}}
@media(max-width:650px){.keyword-routes{padding:64px 0}.keyword-route-grid{grid-template-columns:1fr;gap:16px}.keyword-route-card,.keyword-route-card-content{min-height:300px}.keyword-route-card-content{padding:26px}.keyword-route-card h3{font-size:29px}}
@media(prefers-reduced-motion:reduce){.keyword-route-card img,.keyword-route-card a{transition:none}}
