@font-face{font-family:Red Hat Display;src:url('/fonts/red-hat-display-400.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Red Hat Display;src:url('/fonts/red-hat-display-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--blue:#4f7fe4;--ink:#222127;--muted:#64636a;--paper:#fff;--line:#e8e8ec;--soft:#f5f7fb}
*{box-sizing:border-box}html{scroll-behavior:auto}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 'Red Hat Display',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--blue)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;height:auto;display:block}iframe{border:0;max-width:100%}h1,h2,h3,p{margin:0 0 22px}h1,h2,h3{line-height:1.18;font-weight:700;letter-spacing:-.035em}h1{font-size:48px}h2{font-size:40px}h3{font-size:24px}p{color:var(--muted)}:focus-visible{outline:3px solid var(--blue);outline-offset:5px}[hidden]{display:none!important}
.container{width:min(1370px,calc(100% - 70px));margin-inline:auto}.topbar{min-height:58px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 35px;font-size:14px}.topbar .button{min-height:58px}.navigation{min-height:132px;padding:20px 35px;display:flex;align-items:center;justify-content:space-between;gap:40px;background:#fff}.brand{flex:0 1 395px}.brand img{width:395px;height:auto}.navigation nav{display:flex;align-items:center;gap:40px;font-size:16px;font-weight:700;text-transform:uppercase}.navigation nav a{white-space:nowrap}.navigation nav a[aria-current]{color:var(--blue)}.language-switch{padding-left:12px;border-left:1px solid #ddd}.menu-toggle{display:none;background:none;border:0;font-size:28px;line-height:1}.home-header{position:relative;z-index:3}.home-header .navigation{position:absolute;top:100%;left:0;width:100%;background:linear-gradient(180deg,rgba(0,0,0,.35),transparent);color:#fff}.home-header .navigation nav a[aria-current]{color:#fff;text-decoration:underline;text-underline-offset:8px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:13px 38px;background:var(--blue);color:#fff;font-size:14px;font-weight:700;letter-spacing:0}.button:hover{background:#355fac;color:#fff}.button-light{background:#fff;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}.button-light:hover{background:#eff3fc;color:var(--ink)}.actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:36px}.hero{min-height:calc(100svh - 58px);height:900px;max-height:1100px;position:relative;background:#656b6a;overflow:hidden}.hero-slides{position:absolute;inset:0}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s}.hero-slide.active{opacity:1}.hero:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.4),rgba(0,0,0,.12))}.hero-content{position:relative;z-index:1;padding:clamp(270px,32vh,390px) 35px 130px;color:white}.hero h1{font-size:48px;max-width:900px;text-shadow:0 2px 12px #0004}.slider-controls{position:absolute;z-index:2;bottom:36px;left:50%;transform:translateX(-50%);display:flex;justify-content:center;gap:14px;max-width:calc(100% - 40px)}.slide-dot{width:14px;height:14px;min-width:14px;border:2px solid white;border-radius:50%;padding:0;background:transparent;box-shadow:0 0 8px #0002}.slide-dot[aria-pressed=true]{background:white}
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;padding-block:90px}.offers article{padding:35px 30px;background:var(--soft);border-top:3px solid var(--blue);display:flex;flex-direction:column;align-items:flex-start}.offers h2{font-size:27px}.offers p{flex:1}.offers .button{padding-inline:28px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding-block:40px 100px}.eyebrow{font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);font-weight:700;margin-bottom:18px}.intro-images{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:stretch}.intro-images img{width:100%;aspect-ratio:.7;object-fit:cover}.services{text-align:center;padding-block:80px 100px}.services>.eyebrow{font-size:17px;letter-spacing:.08em;margin-bottom:22px}.services>.eyebrow:after{content:"";display:block;width:44px;height:2px;background:#a7c0fa;margin:20px auto 0}.services h2{font-size:clamp(32px,3.6vw,54px);margin-bottom:60px;color:#171d2a}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:58px 48px}.service-grid article{min-width:0}.service-icon{width:108px;height:108px;border-radius:50%;background:#f2f6ff;color:var(--blue);display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.service-icon svg{width:60px;height:60px}.service-grid h3{font-size:clamp(22px,1.8vw,28px);letter-spacing:-.025em;margin-bottom:12px;color:#171d2a}.service-grid p{font-size:20px;line-height:1.5;margin:0 auto;max-width:370px}
.gallery-section{text-align:center;padding-block:35px 120px}.gallery-section h2{margin-bottom:55px}.gallery{display:grid;grid-template-columns:repeat(7,1fr);gap:18px}.gallery a{display:block;overflow:hidden;background:var(--soft)}.gallery img{width:100%;aspect-ratio:1;object-fit:cover}.gallery a:hover img{filter:brightness(.88)}
.about{padding-block:70px 50px;display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:75px}.about-copy h2{font-size:32px;margin-top:45px}.about>img{width:100%;aspect-ratio:.85;object-fit:cover}.about-gallery{padding-block:30px}.stats{padding-block:85px 100px;display:grid;grid-template-columns:repeat(4,1fr);text-align:center;gap:40px}.stats strong{display:block;font-size:68px;font-weight:700;color:var(--blue);line-height:1.3}.stats p{font-size:18px;max-width:210px;margin:auto}.contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding-block:80px 100px}.contact h2{font-size:22px;margin-bottom:10px;margin-top:30px}.contact iframe{width:100%;height:520px;align-self:center;background:var(--soft)}.booking{padding-block:45px 70px}.booking h1{font-size:36px}.booking iframe{display:block;width:100%;min-height:850px}
.site-footer{background:var(--ink);color:#eee;padding-top:85px}.site-footer p,.site-footer a{color:#d2d1d6}.site-footer a:hover{color:white;text-decoration:underline}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr 1.2fr;gap:40px;padding-bottom:65px}.footer-brand img{width:270px}.site-footer h2{font-size:19px;letter-spacing:0;color:#fff;margin-bottom:25px}.site-footer p,.site-footer li,.site-footer nav{font-size:14px;line-height:1.9}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer nav{display:flex;flex-direction:column;gap:5px}.copyright{border-top:1px solid #ffffff26;padding-block:25px}.copyright p{font-size:13px;margin:0}
.lightbox{width:96vw;height:94vh;max-width:none;max-height:none;margin:auto;padding:55px 65px 45px;border:0;background:#17171a;color:white;overflow:hidden}.lightbox::backdrop{background:#000d}.lightbox figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.lightbox img{max-height:calc(100% - 40px);width:auto;object-fit:contain}.lightbox figcaption{font-size:14px}.lightbox button{position:absolute;border:0;background:#ffffff13;color:white;width:44px;height:44px;border-radius:50%;font-size:30px;line-height:1}.lightbox-close{right:14px;top:10px}.lightbox-prev{left:12px;top:47%}.lightbox-next{right:12px;top:47%}
.photo-catalog{padding-block:55px}.catalog-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.catalog-card{border:1px solid var(--line);padding:15px}.catalog-card img{width:100%;height:180px;object-fit:contain;background:#e1e3e9}.catalog-card h2{font-size:20px}.catalog-card p{font-size:14px}.catalog-card a{display:block}.catalog-card button{background:var(--blue);color:white;border:0;padding:10px 18px}
.home .intro{padding-top:100px}
@media(min-width:1700px){.navigation,.topbar{padding-inline:max(35px,calc((100vw - 1560px)/2))}.hero-content{padding-left:max(35px,calc((100vw - 1560px)/2))}}
@media(max-width:1150px){.navigation nav{gap:24px}.brand{flex-basis:300px}.footer-grid{grid-template-columns:1fr 1fr 1fr}.footer-brand{grid-column:1/-1}.intro{gap:40px}.gallery{grid-template-columns:repeat(4,1fr)}.about{gap:40px}.hero h1{font-size:44px}}
@media(max-width:800px){body{font-size:16px}.container{width:calc(100% - 40px)}h1{font-size:36px}h2{font-size:32px}.topbar{padding:18px 20px;min-height:74px;text-align:center;justify-content:center}.topbar .button{display:none}.navigation{padding:20px;min-height:100px;flex-wrap:wrap;gap:10px}.brand{flex:1;max-width:330px}.menu-toggle{display:block;color:inherit}.navigation nav{display:none;flex-basis:100%;align-items:stretch;gap:0;padding:18px 0;background:#fff;color:var(--ink)}.navigation nav a{padding:12px 20px}.navigation nav a[aria-current]{color:var(--blue)!important;text-decoration:none!important}.navigation.menu-open nav{display:flex;flex-direction:column}.home-header .navigation.menu-open{background:#fff;color:var(--ink)}.home-header .navigation.menu-open .brand{background:#222127;padding:10px}.language-switch{border:0}.hero{height:740px;min-height:calc(100svh - 74px)}.hero-content{padding:260px 20px 100px}.hero h1{font-size:34px;max-width:580px}.button{padding-inline:25px}.offers{grid-template-columns:1fr;gap:20px;padding-block:50px}.offers article{padding:28px}.intro{grid-template-columns:1fr;padding-block:25px 65px;gap:40px}.intro-images img{aspect-ratio:.8}.services{padding-block:40px 55px}.services h2{margin-bottom:40px}.service-grid{grid-template-columns:1fr 1fr;gap:36px 25px}.service-grid h3{font-size:21px}.gallery-section{padding-block:25px 65px}.gallery-section h2{margin-bottom:32px}.gallery{grid-template-columns:repeat(3,1fr);gap:12px}.about{grid-template-columns:1fr;padding-block:40px;gap:25px}.about>img{aspect-ratio:1.3}.stats{grid-template-columns:1fr 1fr;gap:30px;padding-block:45px 60px}.stats strong{font-size:54px}.contact{grid-template-columns:1fr;gap:30px;padding-block:40px 60px}.contact iframe{height:420px}.booking{width:100%;padding:35px 10px}.booking h1{padding-inline:10px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.site-footer{padding-top:55px}.footer-grid>div:last-child{grid-column:1/-1}.lightbox{padding:50px 40px 35px}.lightbox button{width:34px;height:34px}.lightbox-prev{left:3px}.lightbox-next{right:3px}.catalog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:430px){.hero h1{font-size:30px}.hero .actions{max-width:260px}.hero .button{width:100%}.brand{max-width:275px}.gallery{grid-template-columns:1fr 1fr}.service-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.catalog-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.contact-map{align-self:center;min-width:0}.contact-map>a{display:inline-block;margin-top:10px;color:var(--blue);font-size:14px;text-decoration:underline}

/* Customer review: readable intro copy and aligned, stable numbered photos. */
.hero-description{max-width:690px;color:#fff;font-size:20px;line-height:1.65;text-shadow:0 1px 8px #0008;margin:22px 0 0}.hero .actions{margin-top:30px}
@media(max-width:800px){.hero-description{font-size:18px;max-width:570px}.service-grid p{font-size:18px}.service-icon{width:92px;height:92px}.service-icon svg{width:52px;height:52px}.services h2{font-size:32px}}
@media(max-width:430px){.hero-content{padding-top:220px}.hero-description{font-size:17px;line-height:1.55}.hero .actions{max-width:310px;gap:12px}.hero .button{min-height:48px;padding-block:10px}.service-grid{gap:40px}}
