/* DRAF V20 — focused enhancements. Original client-approved site design unchanged. */
:root{--d20-navy:#0c2844;--d20-ink:#15383f;--d20-gold:#c69a49;--d20-border:#dce6e4}
.nav-desktop{gap:clamp(5px,.76vw,14px)!important}.nav-desktop a{white-space:nowrap;font-size:clamp(9px,.77vw,12px)!important}
@media(max-width:1220px){.nav-desktop{display:none!important}.hamburger{display:grid!important;place-items:center!important}.mobile-menu{display:block;position:fixed;inset:76px 0 0;background:#fff;z-index:99;overflow:auto;padding:25px 6%;box-shadow:0 30px 30px #0002}.mobile-menu[hidden]{display:none!important}.mobile-menu nav{display:flex;flex-direction:column}.mobile-menu a{display:flex;justify-content:space-between;border-bottom:1px solid #e6e9ed;padding:14px 0;font-family:var(--serif);font-size:22px}}
/* The social icons previously touched the Get in Touch CTA. Both desktop and phone spacing. */
.footer .footer-link,.footer a.footer-link{margin-top:32px!important;display:inline-flex!important;align-items:center;gap:10px}
.footer [class*=social],.footer .social-links{row-gap:12px}
.footer [class*=social]+.footer-link,.footer .social-links+.footer-link{margin-top:30px!important}
/* Team */
.d20-team-intro{padding:clamp(50px,6vw,90px) 0 24px}
.d20-team-intro .eyebrow,.d20-overline{font-size:11px;font-weight:800;letter-spacing:.16em;color:#a77a34;text-transform:uppercase}
.d20-team-intro h2{font-size:clamp(2.2rem,4.4vw,4.3rem);line-height:1.08;margin:13px 0;color:#163b45}
.d20-team-intro>p:last-child{color:#5f7381;line-height:1.8;max-width:670px}
.d20-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,42px);padding-bottom:clamp(65px,9vw,140px)}
.d20-team-card{background:#fff;border:1px solid #e4eae8;overflow:hidden;box-shadow:0 24px 65px #093a4e0b;transition:transform .25s,box-shadow .25s}
.d20-team-card:hover{transform:translateY(-4px);box-shadow:0 22px 56px #093a4e18}
.d20-team-photo{background:#eef3f3;aspect-ratio:5/4;display:grid;place-items:center;overflow:hidden}
.d20-team-photo img{height:100%;width:100%;object-fit:contain;object-position:center center}
.d20-team-card:first-child .d20-team-photo{background:#e7eaeb}
.d20-team-copy{padding:clamp(24px,3.3vw,48px)}.d20-role{font-size:.72rem;color:#a47c38;font-weight:800;letter-spacing:.16em;line-height:1.5}
.d20-team-copy h2{font-size:clamp(1.75rem,2.8vw,2.7rem);margin:14px 0;line-height:1.18;color:#153e4b}
.d20-team-copy p{color:#60757d;line-height:1.8;max-width:440px}
.d20-team-copy a{display:inline-flex;margin-top:15px;color:#a5782c;font-weight:750;text-decoration:none;border-bottom:1px solid #cba969;padding-bottom:5px}
.d20-team-copy a:hover{color:#153c53}
/* Contact redesign */
.d20-contact-section{background:linear-gradient(180deg,#f7faf8,#fff);padding:clamp(50px,7vw,112px) 0}
.d20-contact-head{max-width:840px;margin-bottom:clamp(28px,5vw,62px)}
.d20-contact-head h2{font-family:var(--serif,Georgia),Georgia,serif;font-weight:650;font-size:clamp(2.55rem,5vw,4.65rem);line-height:1.1;color:#103344;margin:10px 0 15px}
.d20-contact-head p{font-size:clamp(.93rem,1.1vw,1.1rem);line-height:1.75;color:#546e79}
.d20-contact-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.22fr);gap:clamp(20px,3.4vw,48px);align-items:start}
.d20-contact-aside{display:grid;gap:15px}
.d20-contact-tile{display:flex;align-items:center;gap:18px;border:1px solid var(--d20-border);background:#fff;border-radius:13px;padding:21px 23px;text-decoration:none;box-shadow:0 12px 34px #072b3709;transition:border-color .18s,transform .18s}
.d20-contact-tile:hover{transform:translateY(-2px);border-color:#bbd7d0}
.d20-contact-symbol{flex:0 0 46px;width:46px;height:46px;display:grid;place-items:center;border-radius:13px;background:#eaf2ef;color:#12564b;font-size:26px;font-weight:700}
.d20-contact-tile span:last-child{min-width:0;display:flex;flex-direction:column;gap:4px}
.d20-contact-tile small{color:#8d754c;font-size:10px;font-weight:800;letter-spacing:.15em}
.d20-contact-tile strong{color:#173b44;font-size:clamp(.9rem,1.4vw,1.12rem);overflow-wrap:anywhere}
.d20-contact-tile em{font-size:.78rem;color:#587783;font-style:normal}
.d20-whatsapp-mark{background:#25d366}.d20-whatsapp-mark img{width:32px;height:32px;object-fit:contain;filter:brightness(0) invert(1)}
.d20-address-tile{border-radius:13px;background:#143e47;color:#fff;padding:clamp(25px,3vw,38px);margin-top:7px}
.d20-address-tile .d20-overline{color:#e1bc80}.d20-address-tile h3{font-size:1.65rem;margin:13px 0}.d20-address-tile p{color:#e1ecea;line-height:1.6;margin:8px 0}
.d20-address-tile small{display:block;border-top:1px solid #ffffff30;padding-top:18px;margin-top:22px;color:#cbdedc;overflow-wrap:anywhere;line-height:1.5}
.d20-form-shell{border:1px solid #e3eae8;background:white;border-radius:18px;padding:clamp(24px,3.8vw,56px);box-shadow:0 22px 74px #06283c14}
.d20-form-kicker{display:inline-flex;padding:9px 13px;border:1px solid #e6e1d6;border-radius:100px;background:#fcf8ef;color:#947031;font-size:11px;font-weight:800;letter-spacing:.13em}
.d20-form-shell h3{font-family:var(--serif,Georgia),Georgia,serif;font-size:clamp(1.8rem,3vw,2.75rem);line-height:1.15;color:#163b45;margin:20px 0 10px}
.d20-form-shell>p{color:#647982;font-size:.92rem;line-height:1.7;margin:0 0 26px}
#draf-contact-v20{display:grid;gap:18px}
.d20-form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
#draf-contact-v20 label{display:flex;flex-direction:column;gap:9px;font-weight:700;color:#25454f;font-size:.88rem}
#draf-contact-v20 label span{color:#ba7b36}
#draf-contact-v20 input,#draf-contact-v20 textarea{border:1.5px solid #d8e3e0;border-radius:9px;background:#f9fbfa;width:100%;font:inherit;color:#193841;font-size:.94rem;line-height:1.45;padding:15px 16px;min-height:51px;transition:background .2s,border-color .2s,box-shadow .2s}
#draf-contact-v20 textarea{min-height:160px;resize:vertical}
#draf-contact-v20 :is(input,textarea):focus{outline:none;background:#fff;border-color:#328879;box-shadow:0 0 0 4px #258e7a1e}
.d20-mail-btn{min-height:56px;border:0;border-radius:9px;background:#0b474a;color:#fff;font-size:.97rem;font-weight:750;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:12px;transition:background .2s,transform .2s}
.d20-mail-btn:hover{background:#0b323d;transform:translateY(-1px)}
.d20-mail-btn:focus-visible,.d20-contact-tile:focus-visible{outline:3px solid #d2a451;outline-offset:3px}
.d20-form-hint{font-size:.8rem;color:#7b8d92;line-height:1.6;margin:0}
.d20-form-status{font-size:.85rem;color:#285c4f;line-height:1.6;min-height:0}.d20-form-status a{color:#195b5a;font-weight:700}
.d20-map-block{margin-top:clamp(50px,7vw,108px)}.d20-map-title{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:25px}
.d20-map-title h2{font-family:var(--serif,Georgia),Georgia,serif;color:#183d4a;font-size:clamp(2.2rem,4.5vw,3.8rem);margin:10px 0}
.d20-map-title p{color:#607982;line-height:1.6}.d20-map-title>a{color:#b27e32;font-weight:750;white-space:nowrap}
.d20-map-frame{border:1px solid #dce6e4;border-radius:16px;overflow:hidden;box-shadow:0 20px 60px #04304d13;background:#eef3f0}
.d20-map-frame iframe{display:block;width:100%;height:clamp(320px,43vw,500px);border:none}
.d20-float-whatsapp{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));z-index:110;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:#25d366;box-shadow:0 10px 32px #1b684550;transition:transform .18s,box-shadow .18s;border:3px solid #fff}
.d20-float-whatsapp img{display:block;width:36px;height:36px;object-fit:contain;filter:brightness(0) invert(1)}
.d20-float-whatsapp:hover{transform:translateY(-3px);box-shadow:0 15px 35px #1b684570}
.d20-float-whatsapp:focus-visible{outline:3px solid #b9a15f;outline-offset:4px}
/* Professionally branded video controls instead of UA default controls. */
.d20-player{position:relative;background:#0a1f27;aspect-ratio:16/9;isolation:isolate;overflow:hidden}
.d20-player video{display:block;width:100%;height:100%;object-fit:contain;aspect-ratio:auto;max-height:none;cursor:pointer}
.d20-player::after{content:"";position:absolute;inset:53% 0 0;pointer-events:none;background:linear-gradient(transparent,#061922a8);z-index:1}
.d20-video-bigplay{position:absolute;inset:0;margin:auto;z-index:2;width:116px;height:94px;border:0;color:#fff;background:transparent;display:grid;place-items:center;align-content:center;gap:9px;cursor:pointer;text-shadow:0 1px 4px #000a;transition:opacity .18s}
.d20-video-bigplay svg{height:60px;width:60px;fill:#fff;background:#b98a40;border-radius:50%;padding:15px;box-shadow:0 5px 27px #0005}
.d20-video-bigplay span{font-weight:750;font-size:.77rem;letter-spacing:.03em}
.d20-is-playing .d20-video-bigplay{opacity:0;pointer-events:none}
.d20-player-controls{position:absolute;bottom:0;left:0;right:0;z-index:3;display:flex;gap:9px;align-items:center;padding:17px 16px 12px;color:white;background:linear-gradient(transparent,#07151bbb)}
.d20-control{border:0;background:#ffffff20;color:#fff;border-radius:50%;width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;cursor:pointer}
.d20-control:hover{background:#ffffff35}.d20-control:focus-visible,.d20-video-bigplay:focus-visible{outline:2px solid #e5b86f;outline-offset:2px}
.d20-current,.d20-duration{font-family:system-ui,sans-serif;font-size:.75rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.d20-seek{flex:1;min-width:0;accent-color:#d2a456;cursor:pointer;height:22px}
.d20-volume{width:62px;accent-color:#e0b563;cursor:pointer}
.d20-player-error{display:none;position:absolute;inset:10px;z-index:6;background:#0b202adf;color:#fff;align-items:center;justify-content:center;flex-direction:column;gap:12px;text-align:center;padding:15px}
.d20-player-error a{color:#f4cd89;font-weight:700}.d20-playback-error .d20-player-error{display:flex}
@media(max-width:950px){.d20-contact-grid{grid-template-columns:1fr}.d20-contact-aside{grid-template-columns:1fr 1fr}.d20-contact-aside>.d20-address-tile{grid-column:1/-1}.d20-team-grid{gap:20px}}
@media(max-width:650px){.d20-team-grid{grid-template-columns:1fr}.d20-team-photo{aspect-ratio:1.08}.d20-team-copy{padding:24px}.d20-contact-aside{grid-template-columns:1fr}.d20-form-row{grid-template-columns:1fr}.d20-form-shell{padding:22px 18px}.d20-map-title{display:block}.d20-map-title>a{display:inline-block;margin-top:10px}.d20-map-frame iframe{height:335px}.d20-player-controls{gap:6px;padding:12px 8px 8px}.d20-control{width:33px;height:33px;flex-basis:33px}.d20-volume{display:none}.d20-current,.d20-duration{font-size:.67rem}.d20-float-whatsapp{width:58px;height:58px;right:14px;bottom:14px}.d20-float-whatsapp img{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){.d20-team-card,.d20-mail-btn,.d20-contact-tile,.d20-float-whatsapp{transition:none;transform:none!important}}
