.footer{flex-wrap:wrap}
.footer-wordmark-stage .footer-dotmark{position:relative;isolation:isolate;flex:0 0 100%;width:100%;height:clamp(150px,25vw,370px);margin-top:24px;overflow:hidden;cursor:crosshair;touch-action:pan-y;border-top:1px solid #c6a36635}
.footer-dotmark canvas{position:absolute;inset:0;display:block;width:100%;height:100%;opacity:0;transition:opacity .2s}
.footer-dotmark.dotmark-ready canvas{opacity:1}
.footer-wordmark-stage .footer-dotmark-text{display:flex;align-items:center;justify-content:center;height:100%;font:800 clamp(80px,18vw,270px)/1 'FACES Agrandir Wide',sans-serif;color:var(--muted);letter-spacing:-.04em}
.footer-dotmark.dotmark-ready .footer-dotmark-text{visibility:hidden}
@media(max-width:620px){.footer-wordmark-stage .footer-dotmark{margin-top:5px;height:160px}}
.footer-wordmark-stage .footer-dotmark{background:#000}
html[data-theme=light] .footer-wordmark-stage .footer-dotmark{background:var(--paper)}

.footer-wordmark-stage{display:flex;align-items:center;gap:30px;padding:18px 5.5%;background:#000;border-top:1px solid #c6a36635}
.footer-wordmark-stage .footer-dotmark{flex:1 1 0;min-width:0;margin:0;border:0}
.footer-wordmark-stage>.brand-sun,.footer-wordmark-stage>.brand-sun-stage{position:relative;display:block;width:clamp(74px,13vw,180px);height:clamp(74px,13vw,180px);flex:none}
.footer-wordmark-stage .brand-sun-stage>.brand-sun{display:block;width:100%;height:100%}
html[data-theme=light] .footer-wordmark-stage{background:var(--paper)}
@media(max-width:620px){.footer-wordmark-stage{gap:12px;padding:10px 21px}.footer-wordmark-stage .footer-dotmark{height:125px}.footer-wordmark-stage>.brand-sun,.footer-wordmark-stage>.brand-sun-stage{width:64px;height:64px}}
/* A quiet native form; only the title is made of sand. */
.request-sand-panel{position:relative;isolation:isolate;background:#000!important;border:1px solid #c6a36666;border-radius:32px;text-align:center;max-width:1200px;margin:34px auto 0!important;padding:64px 6% 42px!important;color:#f1e9db}
.request-sand-panel>.eyebrow{color:#cfb98f}
.sand-title{position:relative;margin:28px auto 32px;isolation:isolate;touch-action:pan-y}
.request-sand-panel .sand-title h2{font-size:clamp(84px,10.8vw,144px);line-height:1.04;margin:0;color:#d5a35f;user-select:none}
.sand-title canvas{position:absolute;left:-56px;top:-56px;width:calc(100% + 112px);height:calc(100% + 112px);pointer-events:none;opacity:0}
.sand-title.sand-ready canvas{opacity:1}
.request-sand-panel .sand-title.sand-ready h2{color:transparent}
.request-sand-panel>p{max-width:680px;margin:0 auto 32px!important;font-size:20px;line-height:1.7;color:#d9d0bf}
.request-sand-panel .request-starter{max-width:760px;margin:0 auto;text-align:center}
.request-sand-panel .request-starter label{display:block;margin-bottom:15px;color:#f1e9db}
.request-sand-panel textarea{position:relative;text-align:center;min-height:150px;color:#f1e9db!important;background:#000!important}
.request-sand-panel .request-form-actions{justify-content:center}
.request-sand-panel .request-form-actions button{min-width:260px;color:#f1e9db;background:#000}
.request-sand-panel>.caption{display:block;max-width:640px;margin:26px auto 0;font-size:14px;color:#b9ac95}
.request-sand-panel .request-selection{max-width:660px;margin:15px auto;border-radius:24px}
.request-signature{display:flex;align-items:center;justify-content:center;gap:20px;margin:42px auto 0}
.request-signature img{width:68px;height:68px}
.request-signature>div{text-align:left}
.request-signature strong{font:800 46px/1 'FACES Agrandir Wide',sans-serif;letter-spacing:-.04em}
.request-signature span{display:block;font:800 10px/2 'FACES Agrandir Wide',sans-serif;letter-spacing:.34em}
@media(max-width:620px){.request-sand-panel{margin:24px 10px 0!important;padding:38px 20px 30px!important}.request-sand-panel .sand-title h2{font-size:69.6px}.request-sand-panel>p{font-size:18px}.request-sand-panel .request-form-actions button{width:100%;font-size:17px}.request-signature strong{font-size:36px}.request-signature img{width:54px;height:54px}}
.request-sand-panel{overflow:clip}

.footer-dot-sun{position:relative;flex:none;width:clamp(74px,13vw,180px);height:clamp(74px,13vw,180px);touch-action:pan-y}
.footer-dot-sun img{display:block;width:100%;height:100%}
.footer-dot-sun canvas{position:absolute;inset:0;width:100%;height:100%;opacity:0}
.footer-dot-sun.dotmark-ready img{visibility:hidden}
.footer-dot-sun.dotmark-ready canvas{opacity:1}
@media(max-width:620px){.footer-dot-sun{width:64px;height:64px}}
/* One canvas spans the sun, the gap and the wordmark, so the light never breaks. */
.footer-wordmark-stage{display:block}
.footer-wordmark-stage .footer-dotmark{width:100%;height:clamp(150px,25vw,370px)}
.footer-dotmark-fallback{display:flex;align-items:center;gap:24px;width:100%;height:100%}
.footer-dotmark-fallback img{width:17%;height:auto}
.footer-dotmark-fallback .footer-dotmark-text{flex:1;font-size:clamp(54px,15vw,230px)}
.footer-dotmark.dotmark-ready .footer-dotmark-fallback{visibility:hidden}
@media(max-width:620px){.footer-wordmark-stage .footer-dotmark{height:125px}.footer-dotmark-fallback{gap:14px}}

/* Full two-line studio signature with breathing room underneath. */
.footer-wordmark-stage .footer-dotmark{height:clamp(195px,29vw,425px)}
.footer-dotmark-fallback .footer-dotmark-text{flex-direction:column;line-height:1.05}
.footer-dotmark-fallback .footer-dotmark-text small{display:block;font-size:clamp(14px,2.5vw,34px);letter-spacing:.34em;margin-top:14px}
@media(max-width:620px){.footer-wordmark-stage .footer-dotmark{height:165px}.footer-dotmark-fallback .footer-dotmark-text small{font-size:12px;letter-spacing:.22em;margin-top:10px}}
