/* Additions: WhatsApp button, wave layers, lightbox counter, small helpers. */
.waves svg{width:100%;height:100%}
.wa{position:fixed;z-index:78;right:1.1rem;bottom:4rem;width:3.5rem;height:3.5rem;border-radius:50%;background:var(--navy);color:#fff;border:1px solid var(--blue-soft);display:grid;place-items:center;text-decoration:none;transition:background-color .3s,color .3s,transform .3s var(--ease)}
.wa:hover{background:var(--blue);color:var(--navy);transform:translateY(-2px)}.wa svg{width:1.7rem;height:1.7rem}
@media (max-width:900px){.wa{bottom:5.6rem;width:3.1rem;height:3.1rem}}
.lb__count{margin:0;font-size:.9rem;letter-spacing:.14em}
.lb__x{border-color:rgba(255,255,255,.7)}
.fsum a{color:inherit}
.fstate h2,.fstate h3{margin-top:0}
.fstate:focus{outline:3px solid var(--navy);outline-offset:3px}
.cols2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
@media (max-width:520px){.cols2{grid-template-columns:1fr}}
.stack>*+*{margin-top:1rem}
.sample-tag{display:inline-block;font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;border:1px dashed var(--taupe-ink);color:var(--taupe-ink);padding:.2rem .6rem}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.imp__title{font-size:clamp(2.2rem,10.5vw,10rem)}
.form h2{margin-top:0;font-size:clamp(1.6rem,3vw,2.2rem)}
.contact__opts{margin-top:1.5rem}
.legal{padding-bottom:2rem}
/* fixes after browser testing */
.fld .chk{display:flex;gap:.7rem;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:.95rem;font-weight:400;line-height:1.55}
.contact>*{min-width:0}
.fstate .btn{white-space:normal;text-align:center;max-width:100%}
#dlg-t{padding-right:3rem}
.pin__lbl{font-family:Jost,sans-serif}
.page-hero__scrim{background:linear-gradient(180deg,rgba(14,34,52,.5),rgba(14,34,52,.36) 45%,rgba(14,34,52,.7))}
.bar,.wa{transition:opacity .25s,visibility .25s}
body:has(#enq:focus-within) .bar,body:has(#enq:focus-within) .wa{opacity:0;visibility:hidden;pointer-events:none}
@media (max-width:760px){.lb__art{width:100%}}
@media (max-width:520px){
 .brand{left:clamp(1.25rem,3vw,3rem);transform:none;text-align:left}
 .brand .brand__name{font-size:clamp(1.15rem,5.6vw,1.45rem);letter-spacing:.16em;margin-right:0}
 .brand .brand__sub{font-size:.62rem;letter-spacing:.5em;margin:.45rem 0 0}
}
/* --badge-clear lifts floating UI above the Wix hosting badge; remove on a paid or custom-domain site */
@media (max-width:40rem){.bar{bottom:max(4.1rem,calc(env(safe-area-inset-bottom) + 3.4rem))}.ck{bottom:8.6rem}}
/* date fields inside the enquiry form and dialog */
.fld .dfield{display:flex;flex-direction:column;font-size:inherit;font-weight:400;letter-spacing:0;text-transform:none;margin-bottom:0}
.dfield--box:last-child{border-right:1px solid rgba(21,49,73,.35)}
/* browser-test fixes */
.lb__th{justify-content:flex-start}
.lb__th button:first-child{margin-left:auto}
.lb__th button:last-child{margin-right:auto}
.menu__n{display:inline-block;min-width:2.2rem}
.quote{overflow-wrap:anywhere}
@media(max-width:640px){.pin__lbl,.pin[aria-pressed=true] .pin__lbl{display:none}}
