:root{--wts-ease:cubic-bezier(.22,1,.36,1);--wts-border:#dfe6e9;--wts-shadow:0 16px 44px rgba(24,49,62,.1)}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{line-height:1.7;-webkit-font-smoothing:antialiased}
.header{box-shadow:0 2px 12px rgba(15,23,42,.06);transition:box-shadow .4s ease}
.header.wts-scrolled{box-shadow:0 8px 30px rgba(15,23,42,.18)}
.header .container.header-inner{padding:14px 20px;gap:1.25rem}
.header .brand{margin-left:0}
.header .nav li{padding:0 1rem}
.header .nav li+li::before{opacity:.25}
.header .nav a{position:relative;display:inline-block;padding:.4rem 0;transition:opacity .25s ease}
.header .nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;border-radius:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--wts-ease)}
.header .nav a:hover::after,.header .nav a:focus-visible::after,.header .nav .current-menu-item>a::after{transform:scaleX(1)}
main.container{padding-top:2rem}
h1,h2,h3{text-wrap:balance}
.hero.modern{padding:clamp(3.5rem,8vw,7rem) clamp(.5rem,3vw,2rem);border-radius:24px;box-shadow:var(--wts-shadow);isolation:isolate;background:var(--header-bg,#3e5661)}
.hero.modern .overlay{background:linear-gradient(100deg,rgba(15,30,40,.86),rgba(15,30,40,.3))}
.hero.modern h1{max-width:19ch;font-size:clamp(2.1rem,4.5vw,3.8rem);line-height:1.08;letter-spacing:-.035em}
.hero.modern p{font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.8;max-width:55ch}
.hero.modern .cta{gap:1rem;margin-top:1.8rem}
main>section+section{margin-top:3.5rem}
main>section>h2{margin-bottom:1.5rem;font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.025em}
.grid{gap:1.5rem}
.card,.wts-contact-card{border:1px solid var(--wts-border);border-radius:20px;box-shadow:0 3px 14px rgba(24,49,62,.04);transition:transform .5s var(--wts-ease),box-shadow .5s var(--wts-ease),border-color .3s ease}
.card>a{display:block;overflow:hidden}
.card img,.gallery-grid img{transition:transform .7s var(--wts-ease)}
.card .p{padding:1.4rem}
.card h3{margin:.1rem 0 .7rem;font-size:1.2rem}
.card h3 a{color:var(--primary,#0f172a);text-decoration:none}
.card .p p{color:#526572}
.gallery-grid .gallery-item{overflow:hidden;border-radius:14px}
.btn,.wp-block-button__link{transition:transform .35s var(--wts-ease),box-shadow .35s ease,background-color .3s ease;border-radius:12px;padding:.85rem 1.3rem;font-weight:600}
.btn.secondary{background:rgba(15,23,42,.65);box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.cta-band{border-radius:20px;padding:clamp(1.5rem,4vw,3rem);background:linear-gradient(120deg,var(--header-bg,#3e5661),#172f40);box-shadow:var(--wts-shadow)}
.cta-band .cta-text{font-size:clamp(1.2rem,2vw,1.55rem);letter-spacing:-.02em}
.content>h1{font-size:clamp(2rem,4vw,3.3rem);letter-spacing:-.035em;margin-bottom:1.5rem}
.contact-columns{gap:2.5rem;margin-top:2.5rem}
.contact-map iframe{box-shadow:var(--wts-shadow)}
.site-footer{margin-top:4.5rem;padding-top:3rem}
.site-footer a{transition:opacity .25s ease;text-underline-offset:5px}
.policy-links{flex-wrap:wrap}
a:focus-visible,button:focus-visible{outline:3px solid #6eadd3;outline-offset:5px;border-radius:4px}
.nav-toggle{align-items:center;justify-content:center}
.nav-toggle .bar{transition:transform .35s var(--wts-ease),opacity .2s ease}
.nav-toggle[aria-expanded="true"] .bar:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .bar:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .bar:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.fade-up{animation:none}
.machina-lightbox.open{animation:wts-lightbox .25s ease}
@keyframes wts-lightbox{from{opacity:0}to{opacity:1}}
@media(hover:hover) and (pointer:fine){
 .card:hover,.wts-contact-card:hover{transform:translateY(-5px);border-color:#b7cbd5;box-shadow:var(--wts-shadow)}
 .card:hover img,.gallery-item:hover img{transform:scale(1.035)}
 .btn:hover,.wp-block-button__link:hover{transform:translateY(-3px);box-shadow:0 12px 24px rgba(15,23,42,.2)}
}
@media(max-width:980px){
 .header .container.header-inner{padding:12px 16px}
 .header .nav{display:block;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .25s ease,transform .35s var(--wts-ease),visibility .25s;box-sizing:border-box}
 .header .nav.open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}
 .header .nav .menu{display:flex;flex-direction:column;align-items:stretch}
 .header .nav .menu>li{padding:6px 12px}
 .header .nav .menu a{display:block;padding:8px 0}
 .hero.modern{border-radius:18px}
 main>section+section{margin-top:2.5rem}
 .grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*::before,*::after{animation:none!important;transition:none!important}
 .card:hover,.wts-contact-card:hover,.card:hover img,.gallery-item:hover img,.btn:hover,.wp-block-button__link:hover{transform:none}
}
@media print{.header .nav{visibility:visible;opacity:1;transform:none}}
