/* V60.3.20 fixes */
[hidden]{display:none!important}
html,body{max-width:100%;overflow-x:clip}
*,*::before,*::after{box-sizing:border-box}
#customForm,#customForm fieldset,#customForm .summary,#customForm .estimate{min-width:0;max-width:100%}
#customForm .summary-row{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1.4fr);gap:12px;min-width:0;max-width:100%;align-items:start}
#customForm .summary-row>*,#customForm .estimate>*{min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}
#customForm .nav-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center;min-width:0}
#customForm .main-order-security{min-width:0;max-width:100%}
#customForm .cf-turnstile{max-width:100%;overflow:hidden}
#customForm button{max-width:100%}
@media(max-width:650px){#customForm .nav-row{flex-direction:column;align-items:stretch}#customForm .nav-row>.back{align-self:flex-start}#customForm .nav-row>.btn{width:100%}#customForm .summary-row{grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr)}#customForm .estimate strong{font-size:clamp(24px,7vw,45px)}}
footer.luxury-footer.footer-v320{padding:52px max(22px,5vw) 20px!important;text-align:left!important}
.footer-v320 .footer-columns{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;align-items:start}
.footer-v320 .footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}
.footer-v320 .footer-col h3{font:600 12px/1.3 'DM Sans',sans-serif;color:#e3c284;letter-spacing:.16em;margin:0 0 9px}
.footer-v320 .footer-col a:not(.luxury-footer-brand){color:#e5d4c7;text-decoration:none;font:400 12px/1.6 'DM Sans',sans-serif}
.footer-v320 .footer-col a:hover{text-decoration:underline}
.footer-v320 .footer-col p{margin:0;color:#d2bdb6;font:400 13px/1.7 'DM Sans',sans-serif}
.footer-v320 .luxury-footer-brand{align-items:flex-start;gap:4px}
.footer-v320 .luxury-footer-brand img{width:60px;height:60px}
.footer-v320 .luxury-footer-brand span{font-size:30px}
.footer-v320 .luxury-footer-bottom{text-align:center;margin-top:45px}
@media(max-width:650px){.footer-v320 .footer-columns{grid-template-columns:1fr;gap:32px}.footer-v320 .footer-col{align-items:flex-start}}
header nav a[aria-current='page']{color:#d8b47a!important}
.atelier-cinematic-banner{background:#25090f;width:100%;line-height:0;overflow:hidden}
.atelier-cinematic-banner img{width:100%;height:auto;display:block}

/* V60.3.21 full-bleed atelier image, responsive */
.atelier-cinematic-banner{width:100vw;max-width:100vw;position:relative;left:50%;margin-left:-50vw;overflow:hidden}
.atelier-cinematic-banner img{display:block;width:100%;height:auto;max-width:none}
@media(max-width:700px){.atelier-cinematic-banner{height: min(78svh,620px);min-height:370px}.atelier-cinematic-banner img{height:100%;object-fit:cover;object-position:50% 50%}}
/* First-page-only custom request path chooser */
.custom-path-choice{padding:24px 0 30px}.custom-path-choice h3{margin:8px 0 22px}.custom-path-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.custom-path-cards button{background:#fffaf5;border:1px solid #c7ad8b;border-radius:12px;padding:26px 20px;text-align:left;display:flex;flex-direction:column;gap:13px;color:#33151c;cursor:pointer;min-height:185px}.custom-path-cards button:hover,.custom-path-cards button:focus-visible{border-color:#7c3045;box-shadow:0 4px 20px #3915211a}.custom-path-cards strong{font-size:21px}.custom-path-cards span{line-height:1.55;font-size:14px}.custom-path-cards em{margin-top:auto;color:#782d43;font-size:13px;font-style:normal;font-weight:700}@media(max-width:650px){.custom-path-cards{grid-template-columns:1fr}.custom-path-cards button{min-height:140px;padding:20px}}
/* Required AI inputs */
.ai-field-invalid{outline:2px solid #e16b6b!important;outline-offset:2px}.ai-validation-note{color:#ffaaaa;font-size:12px;display:block;margin-top:6px}.ai-loading-spinner{display:inline-block;width:15px;height:15px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-3px;margin-right:8px;animation:ai-spin .8s linear infinite}@keyframes ai-spin{to{transform:rotate(360deg)}}

.custom-path-choice[hidden],.idea-shortcut[hidden],fieldset[hidden]{display:none!important}

/* Small phones: the Turnstile box is a fixed 300px, so trim the padding around it instead of letting the panel overflow. */
.studio-right>.review-flow>.panel{min-width:0}
@media(max-width:400px){.studio-right>.review-flow>.panel{padding-left:14px;padding-right:14px}.turnstile-panel{padding:12px 8px}}
