@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700&display=swap');
:root{font-family:Outfit,Arial,sans-serif;color:#eaf2f4;background:#182b39;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit}img{max-width:100%;display:block}button,input,select,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #49d3dd;outline-offset:4px}.wrap{max-width:1440px;margin:auto;padding-inline:clamp(22px,6vw,96px)}.site-header{position:absolute;z-index:30;top:0;left:0;right:0;height:86px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;line-height:1.1;letter-spacing:.09em;text-decoration:none}.brand img{width:58px;height:55px;object-fit:contain;background:#eaf2f4;border-radius:5px;padding:3px}.site-header nav{display:flex;align-items:center;gap:clamp(12px,3vw,36px)}.site-header nav a{text-decoration:none;font-size:15px}.site-header nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-action{border:1px solid #a7c5e0;padding:11px 15px}.hero{position:relative;min-height:min(900px,100svh);min-height:700px;display:flex;align-items:center;overflow:hidden;background:#182b39}.hero img,.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero video{opacity:.65}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#152733ed 0%,#152733ad 50%,#15273333 100%)}.hero-content{position:relative;z-index:1;padding-top:120px;padding-bottom:100px}.kicker{display:block;text-transform:uppercase;letter-spacing:.17em;font:600 12px DM Sans,sans-serif;color:#83d8e1}.hero h1{font-size:clamp(3.3rem,8vw,8rem);line-height:.96;letter-spacing:-.07em;margin:22px 0 27px;max-width:11ch}.hero p{font-size:clamp(1.1rem,1.8vw,1.55rem);line-height:1.5;max-width:630px;color:#e5eef0}.hero-link,.solid-link{display:inline-flex;margin-top:28px;text-decoration:none;background:#69dae1;color:#112837;font-weight:700;padding:17px 23px;transition:background .2s}.hero-link:hover,.solid-link:hover{background:#b8f5f1}.section{padding-block:clamp(80px,10vw,145px)}h2{font-size:clamp(3rem,6vw,6rem);line-height:1;letter-spacing:-.065em;margin:18px 0 25px;font-weight:600}.light{background:#edf3f5;color:#172b38}.light p{color:#465c67}.section p{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.65}.feature-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw;align-items:end}.feature-grid p{max-width:550px}.dark-link{display:inline-flex;margin-top:20px;padding:16px 22px;background:#182b39;color:white;text-decoration:none;font-weight:600}.gallery{display:grid;grid-template-columns:1fr 1fr;background:#a4b8c0;gap:4px;padding:4px}.gallery figure{margin:0;background:#243b49;overflow:hidden}.gallery figure img{width:100%;aspect-ratio:1.65;object-fit:cover;transition:transform .5s}.gallery figure:hover img{transform:scale(1.04)}.gallery figcaption{padding:28px 6% 38px;min-height:195px}.gallery small,.index-label{font:600 12px DM Sans,sans-serif;letter-spacing:.12em;color:#92d9e2}.gallery strong{display:block;font-size:clamp(1.6rem,2.8vw,2.6rem);margin:12px 0 8px}.gallery p{margin:0;color:#d0dfe4;line-height:1.5;font-size:1rem}.more{background:#dce8ed;color:#182b39}.concept-row{border-top:1px solid #a1b7c1;padding:27px 0;display:flex;justify-content:space-between;gap:25px;align-items:center}.concept-row h3{font-size:clamp(1.8rem,3vw,3rem);margin:7px 0}.concept-row p{margin:0;font-size:1rem}.concept-row a{font-weight:700;white-space:nowrap}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.about-grid .full-logo{width:min(100%,390px);margin-bottom:18px}.contact{background:#263e52}.contact a.contact-row{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #859aab;padding:20px 0;text-decoration:none;font-size:clamp(1.2rem,2.5vw,2.3rem);overflow-wrap:anywhere}.contact a.contact-row:hover{color:#98e2ea}.footer{background:#101e29;padding-block:34px;display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:14px}.demo{background:#142a34;color:#f4f5f0}.demo .hero{background:#142a34}.demo .hero:after{background:linear-gradient(90deg,#142a34ee,#142a3490 60%,#142a3422)}.demo .kicker{color:#b5e8d8}.demo .hero-link,.demo .solid-link{background:#c9e2da}.demo .light{background:#f4f5f0;color:#142a34}.demo .index-label{color:#4a8073}.notice{text-align:center;background:#23414a;padding:14px 20px;font:600 12px DM Sans,sans-serif;letter-spacing:.12em}.services{display:grid;grid-template-columns:1.3fr 1fr;gap:4px;background:#aec4be;margin-top:50px}.services article{background:#e2ebe6;padding:32px;min-height:260px;display:flex;flex-direction:column;justify-content:end}.services article:first-child{grid-row:span 2;padding:0;position:relative;min-height:520px;overflow:hidden}.services article:first-child img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.services article:first-child div{position:relative;margin-top:auto;padding:80px 30px 30px;background:linear-gradient(0deg,#e2ebe6 60%,transparent)}.services h3{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.04em;margin:12px 0}.services p{font-size:1rem;line-height:1.5;margin:0}.approach{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.step{border-top:1px solid #738d91;padding:25px 0;display:grid;grid-template-columns:50px 1fr;gap:15px}.step h3{font-size:1.6rem;margin:0}.step p{font-size:1rem;margin:7px 0;color:#c9d9d8}.guide{background:#dceae4;color:#142a34}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.guide-panel{align-self:start;background:#f4f5f0;border:1px solid #9bb9b0;padding:32px}.guide-panel label{font-weight:700;display:block;margin-bottom:10px}.guide-panel select{width:100%;padding:15px;background:white;border:1px solid #76958e}.guide-result{border-top:1px solid #abc6be;margin-top:24px;padding-top:22px;min-height:130px}.guide-result p{font-size:1rem;margin:6px 0;color:#455c5f}.closing{position:relative;min-height:530px;display:flex;align-items:center;overflow:hidden}.closing img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.36}.closing:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#142a34,transparent)}.closing .wrap{position:relative;z-index:1;width:100%}.closing .wrap>*{max-width:720px}.booking{background:#edf3f5;color:#172b38;min-height:100svh}.booking .site-header{position:relative;background:#182b39;color:white}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding-top:90px;padding-bottom:110px}.booking h1{font-size:clamp(3.5rem,6vw,6rem);letter-spacing:-.06em;line-height:1;margin:22px 0}.booking p{font-size:1.1rem;line-height:1.6;color:#465d68}.fact{border-top:1px solid #a3b8c1;padding:20px 0;display:flex;justify-content:space-between;gap:15px}.fact span{color:#516873}.direct{margin-top:30px;display:grid;gap:8px}.direct a{color:#193e57}.booking form{background:#dce8ed;padding:clamp(25px,4vw,50px);display:grid;gap:18px}.booking form h2{font-size:2.5rem;margin:0}.booking label{display:grid;gap:8px;font-weight:600}.booking input,.booking select,.booking textarea{width:100%;padding:13px;border:1px solid #8aa0aa;background:#fff;color:#172b38;border-radius:0}.booking button{padding:16px;border:0;background:#182b39;color:white;text-align:left;font-weight:700;cursor:pointer}.booking button:hover{background:#365976}.booking .fineprint{font-size:.9rem;margin:0}.status{border-left:4px solid #317a8c;padding:12px;background:#edf3f5}
@media(max-width:800px){.site-header{height:76px}.site-header nav a:not(.nav-action){display:none}.brand{font-size:11px}.brand img{width:48px;height:46px}.hero{min-height:650px}.feature-grid,.about-grid,.approach,.guide-grid,.booking-layout{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery figcaption{min-height:0}.services{grid-template-columns:1fr}.services article:first-child{grid-row:auto;min-height:450px}.concept-row{align-items:start;flex-direction:column}.footer{display:block}.footer>*{display:block;margin:12px 0}.booking-layout{gap:45px;padding-top:65px}.fact{display:block}.fact span{display:block;margin-top:5px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.gallery figure img{transition:none}}
