/* Shared contact layouts: content-sized rows, no blank row beneath the form. */
.af13-design .af-home .af-contact{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:auto 1fr;column-gap:clamp(28px,4vw,56px);row-gap:28px;align-items:start;padding-block:52px!important}
.af13-design .af-home .af-contact>.af-contact-copy{grid-column:1;grid-row:1}
.af13-design .af-home .af-contact>.atelier-contact-form-wrap{grid-column:2;grid-row:1 / span 2;align-self:start;margin:0!important}
.af13-design .af-home .af-contact>.dg-tax-panel{grid-column:1;grid-row:2;margin:0!important;align-self:start}
.af13-design .af-home .af-contact-copy h2{font-size:clamp(36px,4vw,56px);line-height:1.12;margin:14px 0 20px}
.af13-design .af-home .af-contact-copy>p:not(.af-eyebrow){margin:18px 0;max-width:40ch}
.af13-design .af-home .af-contact-email{margin:10px 0 18px}

.af13-design .af13-local-contact{grid-template-rows:auto 1fr;row-gap:28px}
.af13-design .af13-local-contact>.af-local-quote-copy{grid-column:1;grid-row:1}
.af13-design .af13-local-contact>.atelier-contact-form-wrap{grid-column:2;grid-row:1 / span 2;align-self:start}
.af13-design .af13-local-contact>.dg-tax-panel{grid-column:1;grid-row:2;align-self:start;margin:0!important}

/* Quote page: release the WordPress reading-column constraint. */
.af13-quote .atelier-page-main{padding:0!important;margin-top:0!important}
.af13-quote .atelier-page-main>.entry-content{padding-inline:0!important;width:100%!important;max-width:none!important}
.af13-quote .atelier-quote-hero{width:100%;padding-block:42px!important}
.af13-quote .atelier-quote-hero h1{margin:12px 0 16px;font-size:clamp(34px,4.3vw,56px)}
.af13-quote .atelier-quote-hero>p:last-child{margin-bottom:0;max-width:64ch}
.af13-design .atelier-quote-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);grid-template-rows:auto 1fr;gap:28px 44px;align-items:start;padding:0!important;margin:40px auto 48px!important;width:min(1200px,calc(100% - 48px));max-width:1200px!important}
.af13-design .atelier-quote-info{grid-column:1;grid-row:1;padding:0}
.af13-design .atelier-quote-info h2{font-size:clamp(28px,2.6vw,36px);margin:10px 0 20px;max-width:22ch}
.af13-design .atelier-quote-info h3{margin:24px 0 10px}
.af13-design .atelier-quote-info li{margin:5px 0;line-height:1.65}
.af13-design .atelier-quote-form{display:contents}
.af13-design .atelier-quote-form>.atelier-contact-form-wrap{grid-column:2;grid-row:1 / span 2;margin:0!important}
.af13-design .atelier-quote-form>.dg-tax-panel{grid-column:1;grid-row:2;align-self:start;margin:0!important}
.af13-design .af13-quote-sectors{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0}
.af13-design .af13-quote-sectors a{display:inline-flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #c6c9bb;border-radius:4px;text-decoration:none;color:#29463b;font-size:14px}
.af13-design .af13-quote-sectors a:hover{background:#e6eadf}

/* FAQ panels use their own width, never viewport-sized padding inside a narrow block. */
.af13-design .atelier-service-faq,
.af13-design .af10-service-page .atelier-service-faq,
.af13-design .entry-content>.atelier-service-faq{box-sizing:border-box;width:min(1200px,calc(100% - 48px));max-width:1200px!important;margin:0 auto 48px!important;padding:clamp(24px,3.2vw,40px)!important;background:#f0eee5;border:1px solid #d8d7c9;border-radius:8px}
.af13-design .atelier-service-faq h2,
.af13-design .af10-service-page .atelier-service-faq h2{font-size:clamp(28px,3vw,40px);line-height:1.2;margin:12px 0 24px;max-width:30ch}
.af13-design .atelier-service-faq details,
.af13-design .af10-service-page .atelier-service-faq details{padding:0;border-color:#cbcdbc}
.af13-design .atelier-service-faq summary,
.af13-design .af10-service-page .atelier-service-faq summary{min-height:52px;padding:18px 0;font-size:clamp(18px,1.8vw,22px);line-height:1.45;color:#273e32;overflow-wrap:break-word}
.af13-design .atelier-service-faq details p,
.af13-design .af10-service-page .atelier-service-faq details p{font-size:16px;line-height:1.7;color:#4d594e;margin:0 0 20px;max-width:78ch}
.af13-design .atelier-service-faq summary:focus-visible{outline:2px solid #8e452c;outline-offset:4px}

/* One readable form component across home, quote, commune and service pages. */
.af13-design .atelier-contact-form-wrap,
.af13-design .af-home .af-contact .atelier-contact-form-wrap{padding:clamp(20px,2.5vw,30px);border:1px solid #d0c8ba;border-radius:8px;background:#fffdf9;box-shadow:0 10px 30px #263e3406}
.af13-design .atelier-contact-form{margin:0;max-width:100%}
.af13-design .atelier-contact-form>p:first-child{margin-top:0}
.af13-design .atelier-contact-form .atelier-form-required{font-size:13px;line-height:1.5;color:#5a6156;margin-bottom:18px}
.af13-design .atelier-contact-form .atelier-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}
.af13-design .atelier-form-grid>br,.af13-design .atelier-contact-form>br{display:none}
.af13-design .atelier-contact-form label,
.af13-design .af-home .af-contact .atelier-contact-form label,
.af13-design .af-local-quote .atelier-contact-form label{font-size:15px!important;line-height:1.55;margin:0 0 16px;color:#2e4235}
.af13-design .atelier-contact-form input:not([type=checkbox]):not([type=hidden]),
.af13-design .atelier-contact-form select,
.af13-design .atelier-contact-form textarea{font-size:16px!important;line-height:1.5;min-height:50px;max-width:100%;margin-top:7px;padding:11px 12px;border-radius:4px;background:#fff!important;color:#273e32}
.af13-design .af-home .af-contact .atelier-contact-form textarea,
.af13-design .af-local-quote .atelier-contact-form textarea,
.af13-design .atelier-contact-form textarea{height:128px;min-height:128px;resize:vertical}
.af13-design .atelier-contact-form input[type=file]{min-height:52px;padding:8px;font-size:14px!important;border:1px dashed #aaaF9b;background:#f7f7f0!important}
.af13-design .atelier-contact-form input[type=file]::file-selector-button{border:0;border-radius:3px;background:#e4e8dc;color:#2e4235;min-height:44px;padding:10px 12px;margin:-4px 10px -4px -4px;cursor:pointer;font:500 14px var(--af-sans)}
.af13-design .atelier-contact-form label>small{display:block;margin-top:8px;font-size:13px;line-height:1.6;font-weight:400;color:#525f51}
.af13-design .atelier-contact-form .atelier-captcha{margin:18px 0;padding:16px;border-radius:5px;background:#f3f4eb;border-color:#cdd2c0}
.af13-design .atelier-contact-form .atelier-captcha legend{font-size:14px;color:#2e4235}
.af13-design .atelier-contact-form .atelier-captcha label{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-bottom:10px}
.af13-design .atelier-contact-form .atelier-captcha input[name=captcha_answer]{width:76px;min-height:48px;margin:0 0 0 8px;flex:0 0 76px}
.af13-design .atelier-contact-form .atelier-captcha small{font-size:13px;line-height:1.5}
.af13-design .atelier-contact-form .atelier-consent,
.af13-design .af-home .af-contact .atelier-consent,
.af13-design .af-local-quote .atelier-consent{min-height:44px;font-size:14px!important;line-height:1.6!important;margin:18px 0 10px;align-items:flex-start}
.af13-design .atelier-contact-form .atelier-consent>span{color:#3e4d3f}
.af13-design .atelier-contact-form .atelier-consent input{margin-top:3px;width:20px;height:20px;flex:0 0 20px}
.af13-design .atelier-contact-form .atelier-form-help{font-size:13px;line-height:1.65;margin:10px 0 18px;color:#525f51;overflow-wrap:anywhere}
.af13-design .atelier-contact-form .atelier-form-preview{font-size:13px;line-height:1.6}
.af13-design .atelier-contact-form .atelier-field-error{color:#942b22}
.af13-design .atelier-contact-form button[type=submit]{min-height:54px;border-radius:4px;font-size:16px;background:#85482e;border-color:#85482e;padding:14px 18px}
.af13-design .atelier-contact-form button[type=submit]:hover{background:#65321f}
.af13-design .atelier-contact-form :is(input,select,textarea,button):focus-visible{outline:2px solid #8e452c;outline-offset:3px}

/* Compact supporting information alongside the form. */
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;width:100%;max-width:none;padding:24px;border-radius:8px;background:#f2f3e9;border-color:#cbd1bc}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-heading h3{font-size:28px;line-height:1.2;margin:16px 0 12px}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-heading p{font-size:14px;line-height:1.7;margin:0}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates>div{padding:16px 14px;border-radius:5px}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates strong{font-size:32px}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates span{font-size:13px;line-height:1.5;margin:10px 0}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates p{font-size:13px;line-height:1.6}
.af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel>details{font-size:14px;line-height:1.65;padding-top:12px}
.af13-design .dg-tax-panel>details>summary{min-height:44px;cursor:pointer}

/* Additional trades and advice are editorial links, with no recycled photos. */
.af13-design .af-home .af13-other-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;margin-top:28px;border-top:1px solid #c8cdbd}
.af13-design .af-home .af13-other-services .af-mini-service{display:flex;align-items:center;gap:16px;min-height:76px;margin:0;padding:16px 0!important;border:0!important;border-bottom:1px solid #c8cdbd!important;border-radius:0;background:transparent;text-decoration:none}
.af13-design .af-home .af13-other-services .af-mini-service>span{display:block;flex:1;min-height:0;padding:0;font-size:17px;line-height:1.45;color:#2e4235}
.af13-design .af13-service-number{font-size:12px;font-weight:500;color:#6b705f;font-variant-numeric:tabular-nums}
.af13-design .af13-service-arrow{font-size:22px;font-weight:400;color:#85482e}
.af13-design .af-home .af13-other-services .af-mini-service:hover>span{color:#85482e}
.af13-design .af-home .af-guide-grid>a.af13-guide-card{display:flex;flex-direction:column;align-items:flex-start;min-height:260px;padding:28px;background:#f8f8f1;border:1px solid #d2d5c6;border-top:3px solid #879578;border-radius:6px}
.af13-design .af13-guide-card>span{font-size:12px;line-height:1.6;letter-spacing:.12em;color:#616b56}
.af13-design .af13-guide-card>h3{font-size:clamp(24px,2.2vw,30px);line-height:1.22;margin:18px 0 14px}
.af13-design .af13-guide-card>p{font-size:15px;line-height:1.65;color:#505e4f;margin:0 0 20px}
.af13-design .af13-guide-card>b{position:static!important;align-self:flex-end;margin-top:auto;color:#85482e;font-size:26px;font-weight:400}
.af13-design .af13-guide-card:hover{border-color:#879578;background:#f0f2e8}
.af13-design .af13-other-services a:focus-visible,.af13-design .af13-guide-card:focus-visible{outline:2px solid #8e452c;outline-offset:4px}
.af13-design .af10-service-page .af-v7-service-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px}
.af13-design .af10-service-page .af-v7-service-gallery figure{margin:0}
.af13-design .af10-service-page .af-v7-service-gallery img{height:clamp(200px,28vw,340px);object-fit:cover}

@media(max-width:1100px){
 .af13-design .af13-local-contact{grid-template-rows:auto}
 .af13-design .af13-local-contact>.af-local-quote-copy{grid-column:1;grid-row:1}
 .af13-design .af13-local-contact>.atelier-contact-form-wrap{grid-column:1;grid-row:2}
 .af13-design .af13-local-contact>.dg-tax-panel{grid-column:1;grid-row:3}
}
@media(max-width:1023px){
 .af13-design .af-home .af-contact{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;row-gap:24px}
 .af13-design .af-home .af-contact>.af-contact-copy{grid-column:1;grid-row:1}
 .af13-design .af-home .af-contact>.atelier-contact-form-wrap{grid-column:1;grid-row:2}
 .af13-design .af-home .af-contact>.dg-tax-panel{grid-column:1;grid-row:3}
 .af13-design .af-home .af-contact-copy>p:not(.af-eyebrow){max-width:65ch}
 .af13-design .atelier-quote-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:28px}
 .af13-design .atelier-quote-form>.atelier-contact-form-wrap{grid-column:1;grid-row:1}
 .af13-design .atelier-quote-info{grid-column:1;grid-row:2}
 .af13-design .atelier-quote-form>.dg-tax-panel{grid-column:1;grid-row:3}
 .af13-design .atelier-quote-info h2{max-width:32ch}
 .af13-design .af-home .af-guide-grid{grid-template-columns:1fr}
 .af13-design .af-home .af-guide-grid>a.af13-guide-card{min-height:0;padding:24px}
 .af13-design .af13-guide-card>h3{max-width:35ch}
}
@media(max-width:599px){
 .af13-design .af-home .af-contact{padding:36px 20px!important;gap:22px}
 .af13-quote .atelier-quote-hero{padding:32px 20px!important}
 .af13-design .atelier-quote-layout{width:calc(100% - 32px);margin:24px auto 32px!important}
 .af13-design .atelier-contact-form .atelier-form-grid{grid-template-columns:minmax(0,1fr);gap:0}
 .af13-design .atelier-contact-form-wrap,.af13-design .af-home .af-contact .atelier-contact-form-wrap{padding:20px 16px}
 .af13-design .atelier-contact-form .atelier-captcha{padding:14px 12px}
 .af13-design .atelier-service-faq,.af13-design .af10-service-page .atelier-service-faq,.af13-design .entry-content>.atelier-service-faq{width:calc(100% - 32px);padding:24px 20px!important;margin-bottom:32px!important}
 .af13-design .af-home .af13-other-services{grid-template-columns:minmax(0,1fr);margin-top:24px;gap:0}
 .af13-design .af-home .af13-other-services .af-mini-service{min-height:64px;gap:12px}
 .af13-design .af-home .af13-other-services .af-mini-service>span{font-size:16px}
 .af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel{padding:20px 16px}
 .af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates{grid-template-columns:minmax(0,1fr)}
 .af13-design :is(.af-contact,.atelier-quote-form,.af13-local-contact)>.dg-tax-panel .dg-tax-rates>div{padding:18px}
 .af13-design .af10-service-page .af-v7-service-gallery{grid-template-columns:minmax(0,1fr)}
}
