.footer-social{display:grid;gap:.55rem;margin-top:2.2rem;font-size:.8rem;color:#e4d6bd}
.footer-social a,.footer-social>span{display:flex;gap:.65rem;align-items:baseline}
.footer-social a:hover{text-decoration:underline}
.footer-social span span,.footer-social b{font-weight:500;color:#d7a954}
.wordmark-svg .mark-gold{animation:logo-gold-arrive .9s .42s both}
.footer-brand .wordmark-svg .mark-gold{animation-delay:.1s}
@keyframes logo-gold-arrive{from{opacity:.2}to{opacity:1}}
.web-spotlight{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:end;min-height:430px;margin:0 0 1rem;padding:clamp(2rem,4vw,4rem);overflow:hidden;position:relative;background:#302638;color:#f5ead7;transition:background .3s ease}
.web-spotlight:hover{background:#423049}
.web-spotlight::before{content:"";position:absolute;left:51%;top:-20%;height:140%;width:1px;background:#bd8d45;transform:rotate(18deg)}
.spotlight-kicker{font-size:.75rem;letter-spacing:.18em;font-weight:700;color:#e1b66f}
.web-spotlight h3{font-size:clamp(3rem,5.6vw,6.7rem);font-weight:600;letter-spacing:-.09em;line-height:1.03;margin:1.4rem 0 1.25rem}
.web-spotlight h3 em{font-style:normal;color:#e5b86f}
.web-spotlight p{max-width:42ch;font-size:1rem;line-height:1.7;color:#e4d7c3;margin:0 0 2rem}
.spotlight-link{display:inline-block;border-bottom:1px solid #e6b76b;padding-bottom:.45rem;font-weight:600;font-size:.87rem}
.web-spotlight>strong{justify-self:center;align-self:center;font-size:clamp(8rem,20vw,22rem);letter-spacing:-.17em;font-weight:600;line-height:.8;transform:rotate(-12deg);color:rgba(234,184,105,.18);text-shadow:1px 1px 0 rgba(238,189,106,.48);transition:transform .7s cubic-bezier(.2,.8,.2,1),color .7s}
.web-spotlight:hover>strong{transform:rotate(-5deg) scale(1.06);color:rgba(234,184,105,.28)}
.web-spotlight>strong span{color:#e5b86f}
.page-websites .page-hero{background:#e3d4b7}
.web-intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,8rem);background:#f3ebdd}
.web-intro h2,.web-showcase h2,.web-process h2,.web-close h2,.booking-intro h2{font-size:clamp(2.7rem,5vw,6rem);line-height:1.08;letter-spacing:-.075em;font-weight:600;margin:1.3rem 0 0}
.web-intro p,.web-showcase-head p,.web-close p,.booking-intro p{font-size:1.06rem;line-height:1.8;color:#514c46;max-width:56ch;margin:0 0 1.2rem}
.web-showcase{background:#dfe5e2}
.web-showcase-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4rem;align-items:end;margin-bottom:2rem}
.web-showcase-head h2{max-width:15ch;margin-bottom:1.2rem}
.showcase-switch{display:flex;border:1px solid #5c6562;padding:4px;gap:4px;align-self:end}
.showcase-switch button{border:0;background:transparent;color:#313a38;font:inherit;font-weight:600;font-size:.83rem;padding:.65rem 1rem;cursor:pointer}
.showcase-switch button[aria-pressed=true]{background:#243431;color:#f7edda}
.showcase-browser{background:#f4ead7;border:1px solid #596965;box-shadow:0 30px 70px rgba(30,52,47,.14);transition:max-width .5s ease}
.showcase-bar{height:46px;display:flex;align-items:center;justify-content:space-between;padding:0 1.2rem;background:#283834;color:#e9d6b4;font-size:.72rem;letter-spacing:.06em}
.showcase-dots{display:flex;gap:5px}.showcase-dots i{width:7px;height:7px;border-radius:50%;background:#c19750;display:block}
.showcase-screen{height:min(56vw,610px);min-height:420px;overflow:hidden;position:relative;background:#f0e7d6}
.showcase-screen iframe{border:0;width:100%;height:100%;pointer-events:none;display:block}
.showcase-browser.is-mobile{max-width:405px;margin-inline:auto}
.showcase-browser.is-mobile .showcase-screen{height:680px}
.showcase-open{display:inline-flex;margin-top:1.8rem}
.web-process{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,9rem);background:#f3ebdd}
.web-process h2{max-width:11ch}
.web-process ol{list-style:none;margin:0;padding:0;border-top:1px solid #8f8068}
.web-process li{display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1.4rem 0;border-bottom:1px solid #8f8068}
.web-process li>span{font-size:.76rem;font-weight:700;color:#8d6025;padding-top:.2rem}
.web-process h3{font-size:clamp(1.35rem,1.8vw,2rem);letter-spacing:-.05em;line-height:1.2;margin:0 0 .35rem}
.web-process p{color:#575149;line-height:1.7;margin:0;max-width:56ch;font-size:.92rem}
.web-close{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;background:#dcc89f}
.web-close h2{margin-bottom:0}.web-close .button{margin-top:1.2rem}
.booking-section{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(2rem,6vw,7rem);background:#e9ddc6}
.booking-intro h2{margin-bottom:1.5rem}
.booking-facts{border-top:1px solid #b49e78;margin-top:2.5rem;display:grid}
.booking-facts>span{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid #b49e78;font-size:.72rem;letter-spacing:.09em;font-weight:700;color:#695b44}
.booking-facts strong{letter-spacing:0;color:#1d1b18;font-size:.87rem}
.booking-panel{background:#fffaf0;border:1px solid #bca77c;min-height:560px;padding:clamp(1.5rem,3vw,3rem)}
.booking-panel #booking-calendar{min-height:550px}
.booking-panel>p{font-size:.82rem;color:#514b41}
.booking-panel>p a{text-decoration:underline}
.booking-awaiting{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:470px}
.booking-spark{font-size:2.3rem;color:#ac772e}
.booking-awaiting h3{font-size:clamp(2rem,3vw,3.6rem);line-height:1.1;letter-spacing:-.06em;font-weight:600;margin:1.4rem 0}
.booking-awaiting p{line-height:1.75;color:#5d5448;max-width:46ch;margin:0 0 2rem}
.contact-topic-actions{display:flex;gap:.65rem;flex-wrap:wrap}
#enquiry-form{scroll-margin-top:2rem}
@media(max-width:900px){.web-spotlight{min-height:360px}.web-spotlight>strong{font-size:18vw}.web-intro,.web-process,.web-close,.booking-section{grid-template-columns:1fr}.web-showcase-head{grid-template-columns:1fr;gap:1rem}.showcase-switch{justify-self:start}.booking-panel{min-height:0}}
@media(max-width:600px){.web-spotlight{grid-template-columns:1fr;min-height:500px;padding:1.5rem}.web-spotlight::before{left:auto;right:21%;top:47%;transform:rotate(48deg);height:75%}.web-spotlight h3{font-size:clamp(3.15rem,12vw,5.2rem)}.web-spotlight>strong{position:absolute;right:11%;bottom:7%;font-size:36vw;pointer-events:none}.web-spotlight p,.spotlight-link{position:relative;z-index:1}.web-showcase-head h2,.web-intro h2,.web-process h2,.web-close h2,.booking-intro h2{font-size:clamp(2.65rem,10vw,4rem)}.showcase-screen{height:430px;min-height:0}.showcase-browser.is-mobile .showcase-screen{height:600px}.showcase-switch button{padding:.6rem .85rem}.web-showcase-head p,.web-intro p,.web-close p{font-size:.96rem}.booking-panel{padding:1.2rem}.booking-facts>span{flex-direction:column;gap:.2rem}.booking-awaiting{min-height:400px}.footer-social{font-size:.78rem}}
@media(prefers-reduced-motion:reduce){.wordmark-svg .mark-gold{animation:none}.web-spotlight,.web-spotlight>strong,.showcase-browser{transition:none}}
