/* Accessible site-wide controls and narrow-screen safeguards. */
html{scroll-padding-top:110px}body{overflow-wrap:break-word}img,video{max-width:100%}main{min-width:0}a,button,input,textarea,select{-webkit-tap-highlight-color:#60195522}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8d6219;outline-offset:4px}
.skip-link{position:fixed;left:16px;top:-100px;z-index:20000;padding:14px 22px;background:#fff;color:#601955;border:2px solid #601955;border-radius:9px;font:700 14px Arial}.skip-link:focus{top:12px}
.site-legal-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px 24px;padding:22px 5%;font:13px/1.6 Arial;color:#fff;background:#43133d}.site-legal-links a{color:#fff;text-decoration:underline;text-underline-offset:4px}.privacy-preferences{font:inherit;min-height:44px;padding:9px 14px;border:1px solid #e0c2d8;border-radius:9px;color:inherit;background:transparent;cursor:pointer}
.cookie-banner{position:fixed;z-index:15000;left:20px;right:20px;bottom:20px;max-width:1050px;margin:0 auto;padding:24px 28px;display:flex;align-items:center;gap:28px;border-radius:18px;background:#fffafc;color:#382031;border:1px solid #d9bdd1;box-shadow:0 12px 50px #24071e40;font:14px/1.6 Arial}.cookie-banner h2{font-size:20px!important;color:#601955!important;line-height:1.2;margin:0 0 10px}.cookie-banner p{font:14px/1.6 Arial!important;color:#433540!important;margin:0}.cookie-banner a{color:#601955;text-decoration:underline}.cookie-actions{display:flex;gap:10px;flex-shrink:0}.cookie-actions button{min-height:46px;white-space:nowrap;padding:12px 16px;border:1px solid #601955;border-radius:9px;background:#fff;color:#601955;font:700 13px Arial;cursor:pointer}.cookie-actions button:last-child{background:#601955;color:#fff}
#brief button[value="workspace"],#quote-form button[value="workspace"]{background:#601955;color:#fff;border:1px solid #601955;min-height:46px;margin:0}#brief button[value="email"],#brief button[value="whatsapp"],#brief button[value="download"],#quote-form button[value="email"],#quote-form button[value="whatsapp"]{background:#fff;color:#601955;border:1px solid #ae8da5;min-height:44px}button:disabled{opacity:.65;cursor:wait}
.hero .hero-content .actions>a.button.outline{background:transparent;border:0;box-shadow:none;padding-left:0;padding-right:0;text-decoration:underline;text-underline-offset:6px}
.hero .eyebrow{color:#ffe2a4!important}.orange{color:#f7d694}label input,label textarea{font:inherit}input,textarea,select{font-size:16px!important}input::placeholder,textarea::placeholder{color:#6b5766}dialog{max-height:90dvh;overflow:auto}dialog::backdrop{background:#24071e99}
.legal-page{background:#f9f5f8;color:#392833;margin:0;font:16px/1.8 Arial}.legal-page header{display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(1120px,90%);margin:auto;padding:24px 0}.legal-page header img{width:210px;height:auto}.legal-page header>a:last-child{font-size:14px;color:#601955;text-decoration:underline}.legal-page main{width:min(820px,90%);margin:36px auto 80px}.legal-page h1{font-size:clamp(36px,6vw,58px);color:#601955;margin:12px 0 20px}.legal-page h2{font-size:24px;color:#601955;margin-top:38px}.legal-page a{color:#601955;text-decoration:underline}.legal-page .legal-lead{font-size:19px;color:#503245}.legal-page .legal-updated{font-size:13px;color:#674c60}.legal-page .legal-contact{padding:24px;border:1px solid #ddc9d7;border-radius:16px;background:white}.legal-page ul{padding-left:24px}.legal-page .site-legal-links a{color:white}
@media(max-width:850px){.cookie-banner{align-items:stretch;flex-direction:column;gap:16px}.cookie-actions{justify-content:flex-end}}
@media(max-width:600px){html{scroll-padding-top:95px}.cookie-banner{left:12px;right:12px;bottom:12px;padding:20px;max-height:75dvh;overflow:auto}.cookie-actions{display:grid;grid-template-columns:1fr 1fr}.cookie-actions button{white-space:normal}.site-header{gap:10px!important}.site-header .brand img{max-width:160px}.site-header nav{max-width:100%;overflow-x:auto}#brief .actions,#quote-form .send-actions{flex-wrap:wrap;display:flex;gap:10px}#brief .actions button,#quote-form .send-actions button{max-width:100%}.entry-card,.photo-service,.story-card,.family-grid article{min-width:0}.legal-page header img{width:160px}.legal-page header{align-items:flex-start}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
