/* Public forms and reading pages share the approved paper, navy and orange palette. */
.atelier-forms :is(.contact-page,.quote-form-page) { background: #f5f1ea; padding-block: 0 64px; }
.atelier-forms .contact-hero { display: block; min-height: 0; height: auto; background: linear-gradient(110deg,#142b46ee,#142b46d9),url('../images/hero-bg.jpg') center/cover; color: #fff; padding: 68px 32px 76px; margin: 0 -32px 42px; border-radius: 0 0 48% 9% / 0 0 6% 3%; }
.atelier-forms .contact-hero h1 { color: #f5f1ea; font-size: clamp(2.6rem,4.6vw,4rem); font-weight: 500; }
.atelier-forms .contact-hero p { color: #d7dfe6; max-width: 600px; margin-inline: auto; }
.atelier-forms .contact-hero h1 i { color: #f6ad55; font-size: .65em; }
.atelier-forms :is(.contact-form-card,.contact-info-card,.booking-section,.quote-form-card,.quote-success-card,.confirmation-card,.forgot-card) { background: #faf8f4; border: 1px solid #ddd7ce; border-radius: 10px; box-shadow: none; }
.atelier-forms :is(.contact-form-card,.contact-info-card,.booking-section) { padding: 32px; }
.atelier-forms :is(.contact-form-card h2,.contact-info-card h2,.booking-section h2) { font-weight: 500; font-size: 1.6rem; }
.atelier-forms :is(.contact-hours,.quote-form-steps,.file-label,.compare-products-summary) { background: #ede8df; border-color: #ddd7ce; border-radius: 8px; }
.atelier-forms :is(.contact-map-wrap,.booking-embed) { box-shadow: none; border-radius: 8px; border: 1px solid #ddd7ce; }
.atelier-forms :is(.contact-form input,.contact-form select,.contact-form textarea,.form-input,.form-select,.form-textarea) { background: #fffdf9; border: 1px solid #d2c9bb; border-radius: 7px; color: #1a365d; box-shadow: none; }
.atelier-forms :is(.form-input,.form-select,.form-textarea):focus,.atelier-forms .contact-form :is(input,select,textarea):focus { background: #fffdf9; border-color: #99531f; box-shadow: 0 0 0 3px #ed89361a; }
.atelier-forms .textarea-wrap .form-textarea { display: block; }
.atelier-forms .char-count { position: static; display: block; margin-top: .4rem; text-align: start; }
.atelier-forms :is(.submit-btn,.contact-form .submit-btn,.login-btn,.register-btn,.forgot-btn) { background: #ed8936; color: #142b46; border-radius: 999px; box-shadow: none; }
.atelier-forms :is(.submit-btn,.login-btn,.register-btn)::before { display: none; }
.atelier-forms :is(.submit-btn,.login-btn,.register-btn):hover { background: #f6ad55; box-shadow: none; }
.atelier-forms .quote-header { background: #142b46; border-radius: 0 0 44% 8% / 0 0 4% 2%; padding: 44px 32px 48px; margin-bottom: 28px; }
.atelier-forms .quote-title { color: #f5f1ea; background: none; -webkit-text-fill-color: currentColor; font-size: clamp(2.5rem,4vw,3.5rem); font-weight: 500; }
.atelier-forms :is(.quote-subtitle,.benefit-desc) { color: #d7dfe6; }
.atelier-forms .quote-page-badge { background: none; border: 0; color: #f6ad55; padding-inline: 0; }
.atelier-forms .benefit-item { background: transparent; border: 0; box-shadow: none; }
.atelier-forms .benefit-icon { background: transparent; color: #f6ad55; border: 1px solid #ed893660; border-radius: 50%; }
.atelier-forms .benefit-title { color: #f5f1ea; font-weight: 500; }
.atelier-forms .quote-form-card { padding: 36px; }
.atelier-forms .quote-form-page { padding-block: 28px 64px; }
.atelier-forms .quote-container { max-width: 950px; }
.atelier-forms .back-link { display: inline-flex; gap: 8px; color: #99531f; margin-bottom: 24px; }
.atelier-forms .form-section { background: #f5f1ea; border-color: #ddd7ce; border-radius: 8px; }
.atelier-forms .contact-item { background: transparent; border: 0; border-bottom: 1px solid #ddd7ce; border-radius: 0; box-shadow: none; padding: 18px 0; }
.atelier-forms .contact-item:hover { box-shadow: none; transform: none; }
.atelier-forms .contact-item i { border: 1px solid #c6b79f; color: #99531f; border-radius: 50%; min-width: 42px; height: 42px; display: grid; place-items: center; font-size: 1rem; background: transparent; }
.atelier-forms .section-title { font-weight: 500; color: #1a365d; }
.atelier-forms .section-title::after { display: none; }
.atelier-forms :is(.section-num,.quote-step-num) { background: #1a365d; color: #fff; box-shadow: none; }
.atelier-forms .quote-step { color: #657080; }
.atelier-forms .quote-step.active { color: #1a365d; }
.atelier-forms .contact-method-option input:checked + label { background: #ede8df; color: #1a365d; border-color: #99531f; box-shadow: none; }
.atelier-forms .contact-method-option label { background: #fffdf9; border-color: #ddd7ce; color: #1a365d; }
.atelier-forms .compare-product-row { background: #faf8f4; border: 1px solid #ddd7ce; border-radius: 8px; }
.atelier-forms :is(.compare-product-name,.compare-products-heading h4) { color: #1a365d; }
.atelier-forms :is(.compare-product-id,.compare-product-quantity label,.compare-products-heading p) { color: #657080; }
.atelier-forms .compare-products-heading > i { color: #99531f; }
.atelier-forms :is(.login-page,.register-page) { background: #f5f1ea; padding: 48px 24px; }
.atelier-forms :is(.login-container,.register-container) { background: #faf8f4; box-shadow: none; border: 1px solid #ddd7ce; border-radius: 12px; overflow: hidden; }
.atelier-forms :is(.login-info-panel,.register-info-panel) { position: relative; background: linear-gradient(150deg,#142b46d9,#142b46f5),url('../images/hero-bg.jpg') center/cover; border-radius: 0 0 44% 0 / 0 0 4% 0; padding: 56px 40px; }
.atelier-forms :is(.login-info-panel,.register-info-panel)::before,.atelier-forms :is(.login-info-panel,.register-info-panel)::after { display: none; }
.atelier-forms .info-brand { color: #f5f1ea; font-weight: 500; font-size: 3rem; }
.atelier-forms .info-subtitle { color: #d7dfe6; }
.atelier-forms .company-feature-icon { border: 1px solid #ed893660; background: transparent; color: #f6ad55; border-radius: 50%; box-shadow: none; }
.atelier-forms .company-feature { background: transparent; border: 0; box-shadow: none; }
.atelier-forms .company-feature-text h4 { color: #f5f1ea; font-weight: 500; }
.atelier-forms .company-feature-text p { color: #d7dfe6; }
.atelier-forms :is(.login-form-panel,.register-form-panel) { background: #faf8f4; }
.atelier-forms .form-title { font-weight: 500; color: #1a365d; }
.atelier-forms .form-logo .logo-symbol { color: #99531f; background: transparent; border: 1px solid #bb956d; box-shadow: none; border-radius: 4px; }
.atelier-forms :is(.input-icon,.password-toggle) { color: #657080; }
.atelier-forms :is(.back-home,.forgot-password,.register-link a,.login-link a) { color: #99531f; }
.atelier-forms :is(.form-subtitle,.forgot-description,.form-footer) { color: #657080; }
.atelier-forms :is(.forgot-page,.confirmation-page) { min-height: 100vh; background: linear-gradient(110deg,#142b46ee,#142b46c9),url('../images/hero-bg.jpg') center/cover; }
.atelier-forms .forgot-page > .back-home { color: #f5f1ea; }
.atelier-forms .forgot-card { border-top: 3px solid #ed8936; }
.atelier-forms .forgot-icon { background: #ede8df; color: #99531f; border: 1px solid #c6b79f; box-shadow: none; }
.atelier-forms .forgot-title { font-weight: 500; color: #1a365d; }
.atelier-forms:has(.forgot-page),.atelier-forms:has(.confirmation-page) { padding-top: 0; }
.atelier-forms .forgot-card .logo { direction: ltr; justify-content: center; font-weight: 500; }
.atelier-forms .forgot-card .logo-icon { color: #99531f; background: transparent; border: 1px solid #bb956d; border-radius: 4px; }
.atelier-forms .confirmation-card { padding: 42px 32px; }
.atelier-forms .confirmation-card .icon { background: transparent; color: #28734d; border: 1px solid #9abcaa; }
.atelier-forms .confirmation-card h1 { font-weight: 500; }
.atelier-forms .confirmation-card .btn { border-radius: 999px; box-shadow: none; }
.atelier-forms .confirmation-card .btn-primary { background: #ed8936; color: #142b46; }
.atelier-forms .error-page { min-height: calc(100vh - 100px); max-width: 760px; margin-inline: auto; padding-block: 72px; }
.atelier-forms .error-code { font-weight: 500; font-size: clamp(7rem,18vw,12rem); color: #99531f; }
.atelier-forms .error-title { color: #1a365d; font-weight: 500; font-size: 2rem; }
.atelier-forms .error-actions a { border-radius: 999px; }
.atelier-forms .navbar > .container > a:not(.logo) { color: #fff; }

.site-atelier.legal-page { background: #f5f1ea; }
.site-atelier .legal-header { background: #142b46; box-shadow: none; }
.site-atelier .legal-brand-mark { border: 1px solid #ed8936; color: #f6ad55; background: transparent; border-radius: 4px; box-shadow: none; }
.site-atelier .legal-brand { font-weight: 500; }
.site-atelier .legal-hero { background: #142b46; border: 0; border-radius: 0 0 44% 8% / 0 0 5% 2%; padding: 44px; box-shadow: none; }
.site-atelier .legal-hero h1 { color: #f5f1ea; font-weight: 500; }
.site-atelier .legal-summary { color: #d7dfe6; }
.site-atelier .legal-badge { color: #f6ad55; background: transparent; font-weight: 500; padding-inline: 0; }
.site-atelier .last-updated { background: transparent; color: #d7dfe6; border-color: #ffffff30; }
.site-atelier :is(.legal-toc,.legal-section,.legal-note,.legal-grid-card,.nav-footer) { background: #faf8f4; border-color: #ddd7ce; border-radius: 10px; box-shadow: none; }
.site-atelier .legal-section { padding: 28px; }
.site-atelier .legal-section h2 { font-weight: 500; font-size: 1.5rem; }
.site-atelier .legal-toc a { border-color: #ddd7ce; }

/* Search landing pages use the same identity, including every localized template. */
.atelier-service { font-family: 'Cairo',Tahoma,Arial,sans-serif; }
.atelier-service .nav { background: #142b46; border-color: #ffffff20; }
.atelier-service .brand { color: #f5f1ea; font-weight: 500; }
.atelier-service .brand span { color: #f6ad55; }
.atelier-service .links a { color: #d7dfe6; }
.atelier-service .btn { background: #ed8936 !important; color: #142b46 !important; border-radius: 999px; display: inline-flex; min-height: 44px; align-items: center; }
.atelier-service .hero { border-radius: 0 0 48% 9% / 0 0 6% 3%; }
.atelier-service .hero h1 { font-weight: 500; line-height: 1.25; font-size: clamp(2.4rem,5vw,4.5rem); }
.atelier-service .band { padding-block: 64px; }
.atelier-service .band h2 { font-weight: 500; font-size: 2.2rem; }
.atelier-service .item { background: #faf8f4; border-color: #ddd7ce; border-radius: 10px; padding: 30px; }
.atelier-service .item b { color: #99531f; font-weight: 500; }
.atelier-service .process { background: #142b46; border-radius: 44% 8% 42% 7% / 5% 3% 5% 3%; color: #f5f1ea; }
.atelier-service .process b { color: #f6ad55; font-size: 2.4rem; font-weight: 500; }
.atelier-service .process h3 { font-weight: 500; }
.atelier-service .cta { background: #f5f1ea; }
@media (max-width: 768px) {
    .atelier-forms :is(.login-page,.register-page) { padding: 20px 16px; }
    .atelier-forms :is(.login-info-panel,.register-info-panel) { padding: 36px 24px; }
    .atelier-forms :is(.login-form-panel,.register-form-panel) { padding-inline: 24px; }
}
@media (max-width: 640px) {
    .atelier-forms .contact-hero { margin-inline: -20px; padding: 42px 20px 52px; }
    .atelier-forms :is(.contact-form-card,.contact-info-card,.booking-section,.quote-form-card) { padding: 24px 20px; }
    .atelier-forms .quote-header { padding: 32px 20px; }
    .atelier-forms .info-brand { font-size: 2.3rem; }
    .site-atelier .legal-hero { padding: 28px 20px; }
    .site-atelier .legal-section { padding: 22px 20px; }
}
@media print {
    .atelier-forms .quote-form-page { padding: 0; background: #fff; }
    .atelier-forms .quote-header { padding: 0 0 20px; background: #fff; border-radius: 0; }
    .atelier-forms :is(.quote-title,.quote-subtitle,.benefit-title,.benefit-desc) { color: #1a365d; }
    .atelier-forms :is(.quote-form-card,.form-section) { background: #fff; box-shadow: none; }
}
