
:root{--ink:#2A2A28;--dark:#2A2A28;--muted:#626260;--paper:#f8f8f7;--cream:#efefee;--accent:#D71920;--white:#fff;--line:#dededb}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}.container{width:min(1150px,calc(100% - 44px));margin:auto}header{position:sticky;top:0;z-index:20;background:rgba(42,42,40,.98);backdrop-filter:blur(12px);border-bottom:1px solid #3c3c3a}.nav{height:83px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{display:flex;align-items:center;gap:12px;font-size:25px;line-height:1;font-weight:900;letter-spacing:-1.7px}.logo-mark{display:grid;place-items:center;width:44px;height:44px;background:var(--dark);color:#fff;border-radius:7px;font-size:24px}.logo small{display:block;margin-top:5px;font-size:9px;letter-spacing:2.1px;color:#bbb;font-weight:700}.nav-links{display:flex;align-items:center;gap:29px;font-size:13px;font-weight:700}.nav-links>a:not(.pill):hover{color:var(--accent)}.pill,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 22px;border:0;border-radius:3px;font-weight:800;font-size:13px;transition:transform .2s,background .2s}.pill{background:var(--accent);color:#fff}.btn:hover,.pill:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);color:white}.btn-outline{border:1px solid #aaa9a1;color:var(--ink)}.btn-light{background:#fff;color:var(--dark)}.menu{display:none;background:transparent;border:0;font-size:28px}.hero{background:var(--dark);color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;right:-220px;top:-270px;width:780px;height:780px;border:1px solid rgba(255,255,255,.09);border-radius:50%;box-shadow:0 0 0 100px rgba(255,255,255,.015),0 0 0 210px rgba(255,255,255,.01)}.hero-grid{display:grid;grid-template-columns:1fr 0.88fr;min-height:630px;align-items:center;gap:55px;padding:85px 0 100px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:2.7px;font-weight:900;color:var(--accent)}.hero h1{font-size:clamp(52px,6.5vw,91px);letter-spacing:-5px;line-height:1.02;margin:24px 0 24px;font-weight:900}.hero h1 em{color:#D71920;font-style:normal}.hero p{color:#dededc;font-size:17px;max-width:485px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.hero .btn-outline{border-color:#999;color:#fff}.tiny-trust{display:flex;gap:26px;flex-wrap:wrap;margin-top:55px;color:#ddd;font-size:12px}.tiny-trust span:before{content:'✓';color:#f04a50;margin-right:9px;font-weight:900}.hero-art{position:relative;height:440px;max-width:510px;isolation:isolate}.art-frame{position:absolute;inset:10px 10px 15px 10px;border:1px solid #70786e;transform:rotate(-6deg)}.art-house{position:absolute;inset:35px 0 0 34px;background:linear-gradient(115deg,#aaa99c,#f3ede0 53%,#beb8aa);overflow:hidden;clip-path:polygon(0 17%,72% 0,100% 12%,100% 100%,0 100%);box-shadow:0 20px 80px #0004}.art-wall{position:absolute;left:8%;top:22%;height:57%;width:63%;background:linear-gradient(90deg,#d9d1bf,#eae3d6)}.art-wall:before{content:"";position:absolute;left:36%;top:11%;width:43%;height:60%;border:13px solid #4e574d;background:linear-gradient(150deg,#bcc8c4,#74877e)}.art-floor{position:absolute;bottom:-4%;left:-10%;width:120%;height:37%;background:repeating-linear-gradient(102deg,#6b665b 0 3px,#a99b83 4px 90px,#6e6a5c 92px 94px);transform:skewY(-11deg)}.art-beam{position:absolute;top:0;right:12%;height:105%;width:17px;background:#f7f2e5;transform:rotate(14deg)}.art-label{position:absolute;right:-14px;bottom:28px;background:var(--accent);padding:18px 22px;box-shadow:0 16px 35px #0004;font-weight:800;line-height:1.2}.art-label small{display:block;margin-top:7px;font-size:10px;text-transform:uppercase;letter-spacing:2px}.strip{background:#ededeb;border-bottom:1px solid var(--line)}.strip-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:23px 0}.strip-item{font-size:13px;font-weight:800;display:flex;align-items:center;justify-content:center;gap:12px}.strip-item b{color:var(--accent);font-size:24px}.section{padding:110px 0}.section-top{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:45px}.section h2{font-size:clamp(37px,4.2vw,57px);line-height:1.09;letter-spacing:-2.5px;margin:16px 0 0}.section-intro{max-width:390px;color:var(--muted);font-size:15px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.service{background:#fff;padding:32px;min-height:325px;border:1px solid #e7e5de;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s}.service:hover{transform:translateY(-4px)}.service-icon{width:56px;height:56px;border-radius:50%;background:#fbe8e9;display:grid;place-items:center;color:#D71920;font-size:26px;margin-bottom:34px}.service .number{font-size:11px;color:#9a9d97;letter-spacing:2px}.service h3{font-size:23px;letter-spacing:-.8px;margin:9px 0}.service p{font-size:14px;color:#707871;margin:0}.service-foot{margin-top:auto;padding-top:25px;font-size:13px;font-weight:800;color:#D71920}.about{background:#ededeb}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-visual{min-height:470px;background:#2A2A28;position:relative;overflow:hidden}.about-visual:before{content:"";position:absolute;width:68%;height:75%;right:0;bottom:0;background:linear-gradient(90deg,#a49a86,#efeadf);clip-path:polygon(0 10%,100% 0,100% 100%,0 100%)}.about-visual:after{content:"";position:absolute;left:10%;top:18%;width:60%;height:50%;border:24px solid #efebe1;box-shadow:0 20px 0 #D71920,0 45px 0 #b6ab96}.about-tag{position:absolute;left:0;bottom:26px;background:var(--accent);color:#fff;padding:21px 28px;font-size:15px;font-weight:800;z-index:1}.about-copy p{color:#626960}.checks{list-style:none;padding:0;display:grid;gap:16px;margin:28px 0}.checks li{font-weight:700;font-size:14px}.checks li:before{content:'✓';display:inline-grid;place-items:center;width:24px;height:24px;background:#d9dcd1;border-radius:50%;margin-right:12px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.project{background:#fff}.project-art{height:250px;position:relative;overflow:hidden}.floor{background:linear-gradient(155deg,#dad9cb 0 48%,#8f755c 49% 100%)}.floor:before{content:"";position:absolute;inset:49% -20% -40%;transform:skewY(-18deg);background:repeating-linear-gradient(90deg,transparent 0 70px,#55493b 72px 74px),repeating-linear-gradient(0deg,transparent 0 58px,#55493b 60px 62px);opacity:.5}.room{background:linear-gradient(90deg,#c3b6a6 0 37%,#ece8df 37% 100%)}.room:after{content:"";position:absolute;bottom:0;width:100%;height:34%;background:#ab8c72;clip-path:polygon(0 28%,100% 0,100% 100%,0 100%)}.room:before{content:"";position:absolute;left:49%;top:13%;height:55%;width:29%;background:#a9b9b2;border:12px solid #fff}.hall{background:linear-gradient(125deg,#d6d2c5,#efebe0)}.hall:before{content:"";position:absolute;left:32%;top:0;height:78%;width:37%;background:#faf9f2;border-left:16px solid #aaa797;border-right:16px solid #aaa797;transform:perspective(150px) rotateX(0deg)}.hall:after{content:"";position:absolute;left:0;bottom:0;height:30%;width:100%;background:repeating-linear-gradient(100deg,#a08b72 0 75px,#786b58 78px 80px);clip-path:polygon(0 0,100% 35%,100% 100%,0 100%)}.project-info{padding:24px 26px}.project-info small{color:#D71920;text-transform:uppercase;font-weight:900;font-size:10px;letter-spacing:2px}.project-info h3{font-size:21px;letter-spacing:-.6px;margin:8px 0 0}.project-info p{font-size:13px;color:#6f776f;margin:10px 0 0}.note{margin-top:20px;color:#7c817b;font-size:12px}.cta{background:var(--accent);color:#fff;padding:70px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{font-size:clamp(37px,4.5vw,59px);letter-spacing:-2px;line-height:1.1;margin:12px 0}.cta p{color:#fff;margin-bottom:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.contact h2{margin-bottom:25px}.contact-text{color:#657067}.contact-detail{border-top:1px solid #deded8;padding:22px 0}.contact-detail small{display:block;letter-spacing:2px;text-transform:uppercase;color:#7b817b;font-size:10px;font-weight:800}.contact-detail a{display:block;margin-top:8px;font-weight:900;font-size:21px}.contact-form{background:#fff;padding:40px;border:1px solid #e4e4de}.contact-form h3{font-size:25px;margin:0 0 24px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:800}.field.wide{grid-column:1/-1}.field input,.field textarea{border:1px solid #d6d8d1;background:#fbfaf7;padding:13px 14px;border-radius:2px;width:100%;font-size:14px}.field textarea{height:120px;resize:vertical}.consent{display:flex;align-items:start;gap:10px;font-size:12px;color:#5f675f;margin:19px 0}.consent input{margin-top:3px}.contact-form .btn{width:100%}.form-note{font-size:11px;color:#868b84;margin-top:12px}footer{background:#2A2A28;color:#fff;padding:37px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-inner small{color:#cececa}.footer-links{display:flex;gap:19px;font-size:12px}.footer-links a:hover{color:#D71920}.legal-notice{font-size:11px;color:#bcbcb8;margin-top:12px}@media(max-width:900px){.nav-links{gap:14px}.nav-links>a:not(.pill){display:none}.hero-grid{grid-template-columns:1fr 0.8fr;gap:20px}.hero-art{height:330px}.services{grid-template-columns:repeat(2,1fr)}.about-grid{gap:40px}.contact-grid{gap:35px}}@media(max-width:650px){.container{width:min(100% - 32px,1150px)}.nav{height:72px}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);padding:22px;box-shadow:0 14px 30px #0001;flex-direction:column;align-items:stretch}.nav-links.open{display:flex}.nav-links>a:not(.pill){display:block}.menu{display:block}.hero-grid{grid-template-columns:1fr;padding:72px 0 60px;gap:38px}.hero h1{letter-spacing:-3px}.hero-art{height:270px;max-width:400px;width:90%;margin:auto}.art-house{inset:15px 0 0 20px}.tiny-trust{gap:14px;margin-top:30px}.strip-inner{grid-template-columns:1fr;gap:8px}.strip-item{justify-content:flex-start}.section{padding:70px 0}.section-top{display:block}.section-intro{margin-top:20px}.services,.projects,.about-grid,.contact-grid{grid-template-columns:1fr}.service{min-height:260px}.about-visual{min-height:310px}.cta-inner{display:block}.cta .btn{margin-top:24px}.fields{grid-template-columns:1fr}.contact-form{padding:24px}.footer-inner{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}

/* DLA corporate identity */
header{background:rgba(42,42,40,.98);border-bottom:1px solid #454542}
.nav{height:98px}
.logo{line-height:0;display:inline-flex;align-items:center;flex:none}
.brand-logo{width:148px;height:auto;display:block}
.nav-links{color:#fff}
.nav-links>a:not(.pill):hover{color:#ff565c}
.pill,.btn-primary{background:#D71920;color:#fff}
.pill:hover,.btn-primary:hover{background:#b81118}
.hero h1 em{color:#f23b42}
.hero .eyebrow{color:#ff6167}
.service-icon{background:#fce8e9;color:#D71920}
.service-foot,.project-info small{color:#b81118}
.cta{background:#D71920}
footer .brand-logo{width:165px}
footer .logo{margin-bottom:10px}
.menu{color:#fff}
@media(max-width:650px){.nav{height:80px}.brand-logo{width:112px}.nav-links{top:80px;background:#2A2A28;color:#fff}.nav-links>a:not(.pill){display:block}.menu{display:block}footer .brand-logo{width:140px}}


/* WordPress / Bootscore integration */
body{background:#f8f8f7}body.admin-bar .dla-site header{top:32px}
.dla-site{color:#2A2A28;font-family:Arial,Helvetica,sans-serif;line-height:1.55}
.dla-site a{text-decoration:none}.dla-site .btn{border-radius:3px;font-size:13px;font-weight:800;box-shadow:none}
.dla-site .btn-primary{--bs-btn-bg:#D71920;--bs-btn-border-color:#D71920;--bs-btn-hover-bg:#b81118;--bs-btn-hover-border-color:#b81118;background:#D71920;border:0;color:#fff}
.dla-site .btn-outline{background:transparent}.dla-site .btn-light{background:white;color:#2A2A28}
.dla-site .container{max-width:1150px}.dla-site .nav{flex-wrap:nowrap}.dla-site .nav-links a{color:inherit}
.dla-site .nav-links .pill{color:#fff}.dla-site .section h2,.dla-site .cta h2{font-weight:800}
.dla-site .contact-form input:not([type=checkbox]),.dla-site .contact-form textarea{border-radius:2px}
.dla-site section[id]{scroll-margin-top:110px}.dla-site .project-art img{display:block;width:100%;height:100%;object-fit:cover}
.dla-site .footer-links a{color:#fff}.dla-site .footer-links a:hover{color:#ff565c}
.dla-site .entry-content{max-width:900px;margin-inline:auto}.dla-site .legal-page{padding:80px 0;min-height:55vh}
.dla-site .legal-page h1{font-size:clamp(34px,4vw,56px);margin-bottom:28px}
.dla-site .post-content{padding:50px 0}.dla-site .post-content:empty{display:none}
.dla-site .screen-reader-text{position:absolute;clip-path:inset(50%);height:1px;width:1px;overflow:hidden}
@media(max-width:782px){body.admin-bar .dla-site header{top:46px}}
@media(max-width:650px){.dla-site .nav-links a{color:#fff}.dla-site .nav-links{z-index:30}.dla-site .hero-art{max-width:100%}}

/* Gutenberg content is the actual homepage; remove WP default block margins for DLA sections. */
.dla-gutenberg-main > .wp-block-html, .dla-gutenberg-main > section, .dla-gutenberg-main > div {margin-block:0}
.dla-gutenberg-main .wp-block-html{max-width:none}
.dla-gutenberg-main section[id]{scroll-margin-top:110px}
.dla-editor-hint{padding:50px 20px;background:#fff7e5;color:#2A2A28}
/* Legal overlays; links remain accessible as normal pages when JS is off. */
.dla-legal-dialog{border:0;border-radius:6px;padding:0;width:min(900px,calc(100% - 30px));max-width:900px;max-height:min(86vh,900px);color:#2A2A28;background:#fff;box-shadow:0 22px 90px #0006}
.dla-legal-dialog::backdrop{background:rgba(10,10,10,.76)}
.dla-dialog-top{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#2A2A28;color:#fff;padding:20px 28px;position:sticky;top:0;z-index:1}
.dla-dialog-top h2{font-size:clamp(23px,3vw,32px);margin:0;line-height:1.2}
.dla-dialog-close{border:1px solid #ffffff55;background:none;color:white;line-height:1;font-size:30px;min-width:44px;min-height:44px;border-radius:3px}
.dla-dialog-content{padding:28px;overflow-wrap:anywhere}
.dla-dialog-content a{color:#bc1219;text-decoration:underline}
.dla-dialog-bottom{padding:15px 28px 25px;border-top:1px solid #ddd;text-align:right}
.dla-dialog-bottom a{color:#b81118;text-decoration:underline}
@media(max-width:650px){.dla-legal-dialog{width:calc(100% - 16px);max-height:92vh}.dla-dialog-top,.dla-dialog-content{padding:18px}}

/* DLA 1.2 – compact CI logo in the sticky header */
.dla-site > header .nav{height:74px;min-height:74px}
.dla-site > header .brand-logo{width:106px;max-height:58px;height:auto;object-fit:contain}
@media(max-width:650px){.dla-site > header .nav{height:66px;min-height:66px}.dla-site > header .brand-logo{width:92px;max-height:52px}.dla-site > header .nav-links{top:66px}}
/* bs Swiper: project cards scoped to the Gutenberg project section */
.dla-project-section .swiper{padding-bottom:40px}
.dla-project-section .swiper-slide{height:auto}
.dla-project-section .card{height:100%;border:1px solid #dededb;border-radius:4px;overflow:hidden;background:#fff;box-shadow:none}
.dla-project-section .card-img-top{aspect-ratio:4/3;object-fit:cover}
.dla-project-section .card-title{font-weight:800;color:#2A2A28}
.dla-project-section .card a:hover{color:#D71920}
.dla-project-section .swiper-button-prev,.dla-project-section .swiper-button-next{color:#D71920}
.dla-project-section .swiper-pagination-bullet-active{background:#D71920}
/* bs Contact Form 7 integration */
.dla-site .contact-form .wpcf7{margin-top:16px}
.dla-site .contact-form .form-label{font-size:13px;font-weight:700;color:#2A2A28}
.dla-site .contact-form .form-control{width:100%;border:1px solid #d0d0ce;padding:12px;background:#fff}
.dla-site .contact-form .form-control:focus{border-color:#D71920;box-shadow:0 0 0 .2rem rgba(215,25,32,.15)}
.dla-site .contact-form .wpcf7-submit{background:#D71920;border-color:#D71920;color:white;cursor:pointer}
.dla-site .contact-form .wpcf7-submit:hover{background:#b81118;border-color:#b81118}
.dla-site .contact-form .wpcf7-response-output{margin:20px 0 0;border-radius:3px}
.dla-form-hint{padding:14px;border-left:4px solid #D71920;background:#fff1f1}


/* DLA 1.3: fluid-feeling, accessible scroll-compressing brand header. */
.dla-site > header.dla-header {position:sticky;top:0;z-index:100;background:#2A2A28;backdrop-filter:none;transition:background-color .3s ease,box-shadow .3s ease;will-change:auto}
.dla-site > header.dla-header .nav {height:116px;min-height:116px;transition:height .36s cubic-bezier(.22,1,.36,1),min-height .36s cubic-bezier(.22,1,.36,1)}
.dla-site > header.dla-header .brand-logo {display:block;width:154px;height:auto;max-height:99px;object-fit:contain;transition:width .36s cubic-bezier(.22,1,.36,1),max-height .36s cubic-bezier(.22,1,.36,1);transform-origin:left center}
.dla-site > header.dla-header.is-scrolled {box-shadow:0 9px 26px rgba(0,0,0,.18);background:#2A2A28}
.dla-site > header.dla-header.is-scrolled .nav {height:74px;min-height:74px}
.dla-site > header.dla-header.is-scrolled .brand-logo {width:106px;max-height:58px}
.dla-site > header.dla-header .nav-links{transition:gap .3s ease}
.dla-site > header.dla-header.is-scrolled .nav-links{gap:24px}
.dla-site .dla-animated-section{margin:0}
.dla-site .dla-animated-section > .wp-block-html{margin:0}
.dla-site .dla-project-section .dla-project-carousel{margin-top:0}
.dla-site .dla-project-section .dla-project-carousel > .wp-block-shortcode{margin:0}
.dla-site .dla-contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}
.dla-site .dla-contact-form-panel{background:#fff;padding:40px;border:1px solid #e4e4de}
.dla-site .dla-contact-form-panel h3{font-size:25px;margin:0 0 24px}
.dla-site .dla-contact-form-panel .wpcf7{margin-top:16px}
.dla-site .dla-contact-form-panel .form-label{font-size:13px;font-weight:700}
.dla-site .dla-contact-form-panel .form-control{width:100%;border:1px solid #d0d0ce;padding:12px;background:#fff}
.dla-site .dla-contact-form-panel .form-control:focus{border-color:#D71920;box-shadow:0 0 0 .2rem rgba(215,25,32,.15)}
.dla-site .dla-contact-form-panel .wpcf7-submit{background:#D71920;border-color:#D71920;color:#fff}
.dla-site .dla-contact-form-panel .wpcf7-submit:hover{background:#b81118;border-color:#b81118}
.dla-site .dla-animated-section:has(> .section) {width:100%}
@media(max-width:900px){.dla-site .dla-contact-grid{gap:35px}}
@media(max-width:650px){
 .dla-site > header.dla-header .nav {height:92px;min-height:92px}
 .dla-site > header.dla-header .brand-logo {width:124px;max-height:75px}
 .dla-site > header.dla-header.is-scrolled .nav {height:66px;min-height:66px}
 .dla-site > header.dla-header.is-scrolled .brand-logo {width:92px;max-height:52px}
 .dla-site > header.dla-header .nav-links {top:100%;background:#2A2A28}
 .dla-site > header.dla-header .menu {color:#fff;min-width:44px;min-height:44px}
 .dla-site .dla-contact-grid{display:grid;grid-template-columns:1fr;gap:35px}
 .dla-site .dla-contact-form-panel{padding:25px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .dla-site > header.dla-header,.dla-site > header.dla-header .nav,.dla-site > header.dla-header .brand-logo,.dla-site > header.dla-header .nav-links{transition:none!important}
 .dla-site .service,.dla-site .pill,.dla-site .btn{transition:none!important}
}

/* 1.3.3: fully opaque header; SVG logo has no background rectangle. */
.dla-site > header.dla-header, .dla-site > header.dla-header.is-scrolled{background-color:#2A2A28;backdrop-filter:none;-webkit-backdrop-filter:none}


/* DLA 1.4 – premium motion: controlled by Gutenberg group CSS classes.
   Progressive enhancement: content remains visible without JS. */
@media (prefers-reduced-motion: no-preference) {
  .dla-gutenberg-main.dla-motion-ready .dla-reveal:not(.is-visible) {
    opacity: 0;
    transform: translate3d(0, 20px, 0);
  }
  .dla-gutenberg-main.dla-motion-ready .dla-reveal-fade:not(.is-visible) {
    transform: none;
  }
  .dla-gutenberg-main.dla-motion-ready .dla-reveal-left:not(.is-visible) {
    transform: translate3d(-20px, 0, 0);
  }
  .dla-gutenberg-main.dla-motion-ready .dla-reveal-soft:not(.is-visible) {
    transform: translate3d(0, 12px, 0) scale(.985);
  }
  .dla-gutenberg-main .dla-reveal {
    transition: opacity .68s cubic-bezier(.22,1,.36,1), transform .68s cubic-bezier(.22,1,.36,1);
    transition-delay: var(--dla-reveal-delay, 0ms);
  }
  .dla-gutenberg-main .dla-reveal.is-visible {opacity:1;transform:none;}
  /* Subtle staggering within repeated content. */
  .dla-gutenberg-main .services > .dla-reveal:nth-child(1) {--dla-reveal-delay:80ms;}
  .dla-gutenberg-main .services > .dla-reveal:nth-child(2) {--dla-reveal-delay:160ms;}
  .dla-gutenberg-main .services > .dla-reveal:nth-child(3) {--dla-reveal-delay:240ms;}
  .dla-gutenberg-main .hero .eyebrow.dla-reveal {--dla-reveal-delay:60ms;}
  .dla-gutenberg-main .hero h1.dla-reveal {--dla-reveal-delay:110ms;}
  .dla-gutenberg-main .hero p.dla-reveal {--dla-reveal-delay:200ms;}
  .dla-gutenberg-main .hero .actions.dla-reveal {--dla-reveal-delay:260ms;}
  .dla-gutenberg-main .hero .hero-art.dla-reveal {--dla-reveal-delay:160ms;}
}
/* No movement is ever required to access content. */
@media (prefers-reduced-motion: reduce) {
 .dla-gutenberg-main .dla-reveal {opacity:1!important;transform:none!important;transition:none!important;}
}

/* DLA 1.4.1 — bs Swiper project cards: original DLA one-page look. */
.dla-site .dla-project-section .swiper-slide {height:auto;display:flex;min-width:0}
.dla-site .dla-project-section .swiper-slide > * {width:100%;min-width:0}
.dla-site .dla-project-section .swiper-slide .card {display:flex;flex-direction:column;width:100%;height:100%;border:0;border-radius:0;box-shadow:none;background:#fff;overflow:hidden}
.dla-site .dla-project-section .swiper-slide .card-img-top,
.dla-site .dla-project-section .swiper-slide .card > a img,
.dla-site .dla-project-section .swiper-slide .card .post-thumbnail img {display:block;width:100%;height:250px;aspect-ratio:3/2;object-fit:cover;border-radius:0}
.dla-site .dla-project-section .swiper-slide .card-body {display:flex;flex-direction:column;align-items:flex-start;flex:1;min-width:0;padding:25px 26px 28px}
.dla-site .dla-project-section .swiper-slide .card-title,
.dla-site .dla-project-section .swiper-slide .card-title a {font-size:clamp(20px,1.8vw,24px)!important;line-height:1.25!important;letter-spacing:-.5px;font-weight:800!important;color:#2A2A28!important;margin:0 0 12px!important;overflow-wrap:anywhere;text-decoration:none}
.dla-site .dla-project-section .swiper-slide .card-text,
.dla-site .dla-project-section .swiper-slide .card-body > p {font-size:14px!important;line-height:1.6!important;color:#737873!important;margin:0!important;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden}
/* Hide standard post metadata and generic read-more links. */
.dla-site .dla-project-section .swiper-slide .card .entry-meta,
.dla-site .dla-project-section .swiper-slide .card .post-meta,
.dla-site .dla-project-section .swiper-slide .card .meta,
.dla-site .dla-project-section .swiper-slide .card .small,
.dla-site .dla-project-section .swiper-slide .card small,
.dla-site .dla-project-section .swiper-slide .card time,
.dla-site .dla-project-section .swiper-slide .card .btn,
.dla-site .dla-project-section .swiper-slide .card .read-more,
.dla-site .dla-project-section .swiper-slide .card .more-link {display:none!important}
.dla-site .dla-project-section .swiper-slide .card-body > :not(.card-title):not(.card-text):not(p):not(.card-subtitle) {max-width:100%}
.dla-site .dla-project-section .swiper-slide .card:hover .card-title a {color:#D71920!important}
.dla-site .dla-project-section .swiper-slide .card-img-top {transition:transform .35s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.dla-site .dla-project-section .swiper-slide .card:hover .card-img-top{transform:scale(1.025)}}
@media(max-width:767px){.dla-site .dla-project-section .swiper-slide .card-img-top,.dla-site .dla-project-section .swiper-slide .card > a img{height:220px}.dla-site .dla-project-section .swiper-slide .card-body{padding:22px}}

/* v1.4.2: isolated project presentation, independent of plugin card markup */
.dla-site .dla-projects-widget{width:100%;min-width:0}
.dla-site .dla-projects-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 40px)/3);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain;padding:0 0 8px}
.dla-site .dla-projects-track::-webkit-scrollbar{display:none}
.dla-site .dla-project-card{scroll-snap-align:start;min-width:0;background:#fff}
.dla-site .dla-project-open{appearance:none;border:0;border-radius:0;background:#fff;display:block;text-align:left;width:100%;height:100%;padding:0;cursor:pointer;color:#2A2A28}
.dla-site .dla-project-image{display:block;aspect-ratio:3/2;overflow:hidden;background:#e9e8e4}
.dla-site .dla-project-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.dla-site .dla-project-open:hover img{transform:scale(1.035)}
.dla-site .dla-project-copy{display:flex;flex-direction:column;align-items:flex-start;padding:26px 27px 28px;min-height:205px}
.dla-site .dla-project-kicker{font-size:11px;letter-spacing:.21em;color:#D71920;font-weight:800;line-height:1.5}
.dla-site .dla-project-title{font-size:clamp(20px,2vw,26px);font-weight:800;line-height:1.22;margin:14px 0 10px;letter-spacing:-.03em}
.dla-site .dla-project-summary{font-size:15px;line-height:1.6;color:#727772;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.dla-site .dla-project-more{font-size:13px;font-weight:700;color:#D71920;margin-top:auto;padding-top:18px}
.dla-site .dla-project-controls{display:flex;justify-content:flex-end;gap:10px;margin-top:15px}
.dla-site .dla-project-controls button{width:44px;height:44px;background:#2A2A28;color:white;border:0;cursor:pointer;font-size:23px}
.dla-site .dla-project-controls button:hover{background:#D71920}
.dla-project-dialog{width:min(960px,calc(100% - 32px));max-width:960px;max-height:90dvh;padding:0;border:0;background:#fff;color:#2A2A28;box-shadow:0 25px 90px #0005;overflow:auto}
.dla-project-dialog::backdrop{background:rgba(12,12,12,.78)}
.dla-project-dialog-close{position:sticky;float:right;top:12px;right:12px;z-index:2;margin:12px 12px -60px 0;background:#D71920;color:white;border:0;width:46px;height:46px;font-size:30px;cursor:pointer}
.dla-project-detail-image img{width:100%;height:auto;max-height:430px;object-fit:cover;display:block}
.dla-project-detail-body{padding:clamp(24px,5vw,55px);font-size:16px;line-height:1.75}
.dla-project-detail-body h2{font-size:clamp(28px,4vw,48px);line-height:1.15;margin:14px 0 24px}
.dla-project-detail-body img{max-width:100%;height:auto}
@media(max-width:900px){.dla-site .dla-projects-track{grid-auto-columns:calc((100% - 20px)/2)}}
@media(max-width:620px){.dla-site .dla-projects-track{grid-auto-columns:88%}.dla-site .dla-project-copy{min-height:190px;padding:22px}}
@media(prefers-reduced-motion:reduce){.dla-site .dla-project-image img{transition:none}.dla-site .dla-project-open:hover img{transform:none}.dla-site .dla-projects-track{scroll-behavior:auto}}

/* DLA v1.4.3: photo-based hero and accessible floating back-to-top */
.dla-gutenberg-main .hero-art .dla-hero-photo{position:absolute;inset:35px 0 0 34px;background-image:url('../img/dla-hero-handwerk.png');background-position:center center;background-size:cover;clip-path:polygon(0 17%,72% 0,100% 12%,100% 100%,0 100%);box-shadow:0 20px 80px #0004}
.dla-gutenberg-main .hero-art .art-frame{z-index:0}
.dla-gutenberg-main .hero-art .art-label{z-index:2}
.dla-back-to-top{position:fixed;right:clamp(16px,3vw,42px);bottom:clamp(16px,3vw,38px);z-index:70;width:52px;height:52px;display:grid;place-items:center;background:#D71920;color:#fff;border:1px solid #D71920;border-radius:3px;box-shadow:0 12px 30px #0003;font-size:25px;font-weight:700;line-height:1;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .22s ease,transform .22s ease,visibility .22s ease,background .22s ease}
.dla-back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.dla-back-to-top:hover{background:#a90e15}.dla-back-to-top:focus-visible{outline:3px solid #2A2A28;outline-offset:4px}
@media(max-width:650px){.dla-gutenberg-main .hero-art .dla-hero-photo{inset:15px 0 0 20px}.dla-back-to-top{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){.dla-back-to-top{transition:none}}

/* v1.4.4: clean isolated hero motif, original frame and label only */
.dla-gutenberg-main .hero-art .dla-hero-photo{inset:12px 0 12px 0;background-image:url('../img/dla-hero-handwerk.png');background-repeat:no-repeat;background-position:center center;background-size:contain;clip-path:none;box-shadow:none;z-index:1}
.dla-gutenberg-main .hero-art .art-frame{z-index:0}
.dla-gutenberg-main .hero-art .art-label{z-index:3}
@media(max-width:650px){.dla-gutenberg-main .hero-art .dla-hero-photo{inset:8px 0 8px 0;background-size:contain}}

/* v1.4.5: Hero image is a transparent cutout; only theme draws label/frame */
.dla-gutenberg-main .hero-art .dla-hero-photo{inset:0!important;background-image:url('../img/dla-hero-handwerk.png')!important;background-size:contain!important;background-position:center center!important;background-repeat:no-repeat!important;clip-path:none!important;box-shadow:none!important;z-index:1!important}
.dla-gutenberg-main .hero-art .art-frame{z-index:0!important}
.dla-gutenberg-main .hero-art .art-label{z-index:2!important}
@media(max-width:650px){.dla-gutenberg-main .hero-art .dla-hero-photo{inset:0!important}}

/* v1.4.6: clean photograph from supplied source, no baked-in frame or lettering */
.dla-gutenberg-main .hero-art .dla-hero-photo{
  position:absolute!important;inset:35px 0 0 34px!important;
  background-image:url('../img/dla-hero-handwerk.jpg')!important;
  background-position:center center!important;background-size:cover!important;
  background-repeat:no-repeat!important;
  clip-path:polygon(0 17%,72% 0,100% 12%,100% 100%,0 100%)!important;
  box-shadow:none!important;z-index:1!important;
}
.dla-gutenberg-main .hero-art .art-frame{z-index:0!important}
.dla-gutenberg-main .hero-art .art-label{z-index:2!important}
@media(max-width:650px){.dla-gutenberg-main .hero-art .dla-hero-photo{inset:15px 0 0 20px!important}}

/* v1.4.8: About photo loaded from child theme, independent of Gutenberg URLs */
.about .about-visual.dla-about-photo {
  background: #2a2a28 url('../img/dla-about-handwerk.jpg') center center / cover no-repeat !important;
  min-height:470px; position:relative; overflow:hidden;
}
.about .about-visual.dla-about-photo::before,
.about .about-visual.dla-about-photo::after { content:none !important; display:none !important; }
.about .about-visual.dla-about-photo .about-tag { position:absolute; z-index:2; }
@media (max-width:650px) { .about .about-visual.dla-about-photo {min-height:340px;} }

/* v1.4.9 – About image framed like the approved mockup */
.dla-gutenberg-main .about .about-visual.dla-about-photo {
  background:#2a2a28 !important;
  min-height:470px; isolation:isolate; overflow:visible;
}
.dla-gutenberg-main .about .about-visual.dla-about-photo::before {
  content:"" !important; display:block !important;
  position:absolute; inset:12% 4% 4% 11%; width:auto; height:auto;
  background:url('../img/dla-about-handwerk.jpg') center / cover no-repeat;
  clip-path:none; z-index:1;
}
.dla-gutenberg-main .about .about-visual.dla-about-photo::after {
  content:"" !important; display:block !important;
  position:absolute; inset:10% 11% 8% 7%; width:auto; height:auto;
  border:1px solid rgba(235,235,226,.7); box-shadow:none;
  background:none; transform:rotate(-7deg); z-index:2; pointer-events:none;
}
.dla-gutenberg-main .about .about-visual.dla-about-photo .about-tag {
  position:absolute; left:0; bottom:7%; z-index:3;
}
@media(max-width:650px){
  .dla-gutenberg-main .about .about-visual.dla-about-photo{min-height:340px}
}

/* DLA 1.5.1: vier Leistungskarten ohne Icons */
.dla-gutenberg-main .services{grid-template-columns:repeat(4,minmax(0,1fr));}
.dla-gutenberg-main .service{min-width:0;min-height:290px;padding:28px;}
.dla-gutenberg-main .service .number{margin-bottom:24px;}
.dla-gutenberg-main .service h3{font-size:21px;}
@media(max-width:1050px){.dla-gutenberg-main .services{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:650px){.dla-gutenberg-main .services{grid-template-columns:1fr;}}

/* v1.5.3 – accessibility and responsive hardening */
.dla-site .service .number{color:#545a55}
.dla-site .service p{color:#4f5851}
.dla-site .contact-detail small{color:#555c55}
.dla-site .form-note{color:#555b55}
.dla-site :is(a,button,input,textarea,select,[tabindex]):focus-visible,
.dla-legal-dialog :is(a,button,input,textarea,select):focus-visible,
.dla-project-dialog :is(a,button,input,textarea,select):focus-visible{outline:3px solid #ffbd45!important;outline-offset:3px!important}
.dla-site :is(.btn,.pill,.service-foot,.footer-links a):focus-visible{box-shadow:0 0 0 2px #2a2a28}
.dla-site .dla-projects-track:focus-visible{outline:3px solid #a20c13!important;outline-offset:3px}
.dla-site .nav-links a:focus-visible{outline-offset:5px}
.dla-site .nav-links.open{z-index:50}
.dla-site .dla-back-to-top:not(.is-visible){visibility:hidden;pointer-events:none}
.dla-site .dla-back-to-top.is-visible{visibility:visible}
.dla-site img,.dla-site video,.dla-site iframe{max-width:100%;height:auto}
.dla-site .about-copy,.dla-site .hero-grid>*,.dla-site .contact-grid>*,.dla-site .section-top>*{min-width:0}
.dla-site .hero h1,.dla-site .section h2{overflow-wrap:break-word}
.dla-site .contact-detail a{overflow-wrap:anywhere}
.dla-site .dla-project-dialog-content{overflow-wrap:anywhere}
@media(max-width:650px){
 .dla-site .nav-links{max-height:calc(100dvh - 72px);overflow-y:auto}
 .dla-site .hero h1{font-size:clamp(2.65rem,12vw,4rem);letter-spacing:-.045em}
 .dla-site .about-tag{max-width:calc(100% - 16px);padding:15px 18px}
 .dla-site .footer-links{flex-wrap:wrap}
 .dla-site .dla-project-dialog{width:calc(100% - 16px)}
}
@media(max-width:360px){.dla-site .container{width:calc(100% - 24px)}.dla-site .service{padding:22px}.dla-site .contact-form{padding:18px}}
@media(prefers-reduced-motion:reduce){
 html:focus-within{scroll-behavior:auto!important}
 .dla-site *, .dla-site *::before,.dla-site *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
 .dla-site .dla-reveal{opacity:1!important;transform:none!important;visibility:visible!important}
}

/* v1.5.4 — branded, accessible 404 page */
.dla-site .dla-not-found{background:#2a2a28;color:#fff;min-height:clamp(560px,75vh,840px);display:flex;align-items:center;overflow:hidden;position:relative;padding:88px 0 110px}
.dla-site .dla-not-found-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(28px,5vw,75px);align-items:center}
.dla-site .dla-not-found-copy{position:relative;z-index:2;min-width:0}
.dla-site .dla-not-found-eyebrow{color:#ff777b;text-transform:uppercase;letter-spacing:.17em;font-size:12px;font-weight:800;margin:0 0 22px}
.dla-site .dla-not-found h1{font-size:clamp(42px,5.7vw,78px);line-height:1.07;letter-spacing:-.045em;font-weight:900;margin:0 0 24px;overflow-wrap:break-word}
.dla-site .dla-not-found h1 span{color:#ff555b}
.dla-site .dla-not-found-lead{color:#e5e5e2;font-size:clamp(16px,1.5vw,19px);max-width:490px;line-height:1.65}
.dla-site .dla-not-found-error{color:#d3d3ce;font-size:13px;margin:22px 0 0}
.dla-site .dla-not-found-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.dla-site .dla-not-found-secondary{background:transparent;border:1px solid #e1e1dd;color:#fff}
.dla-site .dla-not-found-secondary:hover{background:#fff;color:#2a2a28}
.dla-site .dla-not-found-art{height:clamp(300px,34vw,460px);position:relative;isolation:isolate;min-width:0}
.dla-site .dla-not-found-frame{position:absolute;inset:11% 10% 8% 7%;border:1px solid #c9c9c1;transform:rotate(-6deg);z-index:1}
.dla-site .dla-not-found-photo{position:absolute;inset:8% 3% 4% 10%;background:#5d5b55 url('../img/dla-hero-handwerk.jpg') center/cover no-repeat;z-index:0}
.dla-site .dla-not-found-stamp{position:absolute;right:0;bottom:2%;z-index:2;background:#d71920;color:#fff;padding:15px 25px;box-shadow:0 12px 32px #0005;display:flex;flex-direction:column}
.dla-site .dla-not-found-stamp strong{font-size:clamp(40px,5vw,70px);line-height:1;font-weight:900}
.dla-site .dla-not-found-stamp small{font-size:11px;font-weight:800;letter-spacing:.04em;margin-top:5px}
@media(max-width:760px){.dla-site .dla-not-found{padding:65px 0 78px}.dla-site .dla-not-found-grid{grid-template-columns:1fr;gap:35px}.dla-site .dla-not-found-art{height:clamp(260px,65vw,390px);max-width:540px;width:100%;margin-inline:auto}.dla-site .dla-not-found h1{font-size:clamp(39px,9vw,62px)}}
@media(max-width:360px){.dla-site .dla-not-found-actions{flex-direction:column;align-items:stretch}.dla-site .dla-not-found-actions .btn{width:100%}.dla-site .dla-not-found-stamp{padding:12px 18px}}
@media(prefers-reduced-motion:reduce){.dla-site .dla-not-found .btn{transition:none!important}}

/* DLA 404 v1.5.5 — bright, generous layout inspired by user's reference */
.dla-site .dla-not-found.dla-404-light{background:#fafaf8;color:#2a2a28;min-height:min(790px,calc(100svh - 90px));padding:clamp(75px,11vh,155px) 0;display:flex;align-items:center;overflow:visible}
.dla-site .dla-404-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(35px,6vw,115px);width:100%}
.dla-site .dla-404-number{font-family:Arial,Helvetica,sans-serif;font-size:clamp(145px,24vw,390px);font-weight:900;line-height:.95;letter-spacing:-.085em;color:#d71920;text-shadow:clamp(7px,1.1vw,16px) clamp(9px,1.2vw,18px) 0 #2a2a28;white-space:nowrap;user-select:none;padding-right:.1em}
.dla-site .dla-404-content{min-width:0;max-width:610px}
.dla-site .dla-404-kicker{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#555650;font-weight:800;margin:0 0 18px}
.dla-site .dla-404-content h1{font-size:clamp(38px,4.5vw,68px);line-height:1.08;letter-spacing:-.045em;font-weight:750;color:#2a2a28;margin:0 0 24px;overflow-wrap:normal}
.dla-site .dla-404-content h1 span{color:#b7151c}
.dla-site .dla-404-description{font-size:clamp(15px,1.25vw,18px);line-height:1.75;color:#50534f;margin:0;max-width:570px}
.dla-site .dla-404-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.dla-site .dla-404-button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:50px;padding:13px 19px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.055em;text-decoration:none;border-radius:3px;transition:background-color .15s ease,transform .15s ease}
.dla-site .dla-404-button-primary{background:#d71920;color:#fff}
.dla-site .dla-404-button-primary:hover{background:#a81118;color:#fff}
.dla-site .dla-404-button-secondary{background:#2a2a28;color:#fff}
.dla-site .dla-404-button-secondary:hover{background:#444440;color:#fff}
.dla-site .dla-404-button:focus-visible{outline:3px solid #151515;outline-offset:4px}
@media(max-width:900px){.dla-site .dla-404-layout{gap:28px}.dla-site .dla-404-number{font-size:clamp(135px,24vw,250px)}.dla-site .dla-404-content h1{font-size:clamp(36px,5vw,52px)}}
@media(max-width:680px){.dla-site .dla-not-found.dla-404-light{min-height:0;padding:70px 0 85px}.dla-site .dla-404-layout{grid-template-columns:1fr;gap:32px}.dla-site .dla-404-number{font-size:clamp(135px,39vw,245px);text-align:center;line-height:1}.dla-site .dla-404-content{max-width:580px}.dla-site .dla-404-content h1{font-size:clamp(36px,9vw,55px)}}
@media(max-width:360px){.dla-site .dla-404-buttons{flex-direction:column}.dla-site .dla-404-button{width:100%}}
@media(prefers-reduced-motion:reduce){.dla-site .dla-404-button{transition:none}}

/* DLA v1.5.6 – konsistente Interaktionsfarben, WCAG-sichtbarer Fokus */
::selection{background:#D71920;color:#fff}
::-moz-selection{background:#D71920;color:#fff}
.dla-site ::selection,.dla-project-dialog ::selection,.dla-legal-dialog ::selection{background:#D71920;color:#fff}
.dla-site a.btn-primary,.dla-site a.btn-primary:link,.dla-site a.btn-primary:visited,
.dla-site .btn.btn-primary,.dla-site .pill{color:#fff;background-color:#D71920;border-color:#D71920;
 --bs-btn-active-bg:#9f1117;--bs-btn-active-border-color:#9f1117;
 --bs-btn-active-color:#fff;--bs-btn-focus-shadow-rgb:215,25,32}
.dla-site a.btn-primary:hover,.dla-site .btn.btn-primary:hover,.dla-site .pill:hover{background-color:#b81118;border-color:#b81118;color:#fff}
.dla-site a.btn-primary:active,.dla-site a.btn-primary:focus,.dla-site .btn.btn-primary:active,
.dla-site .btn.btn-primary:focus,.dla-site .btn.btn-primary.active,.dla-site .pill:active,
.dla-site .btn.btn-primary:first-child:active,.dla-site .btn.btn-primary:not(.btn-check)+.btn:active{background-color:#9f1117;border-color:#9f1117;color:#fff;box-shadow:none}
.dla-site a:not(.btn):active{color:#9f1117}
/* Roter Fokus mit weißem Trennrand, auch auf roten Schaltflächen erkennbar. */
.dla-site :is(a,button,input,textarea,select,[tabindex]):focus-visible,
.dla-legal-dialog :is(a,button,input,textarea,select):focus-visible,
.dla-project-dialog :is(a,button,input,textarea,select):focus-visible{
 outline:3px solid #a90e15!important;outline-offset:3px!important;
 box-shadow:0 0 0 5px #fff!important}
.dla-site :is(.btn-primary,.pill):focus-visible,
.dla-project-dialog .dla-project-dialog-close:focus-visible{
 outline-color:#2A2A28!important;box-shadow:0 0 0 3px #fff!important}
.dla-site .dla-projects-track:focus-visible{outline:3px solid #a90e15!important;outline-offset:3px!important;box-shadow:none!important}
.dla-site .dla-project-open:focus-visible{outline:3px solid #a90e15!important;outline-offset:-3px!important;box-shadow:inset 0 0 0 3px #fff!important}
.dla-site .form-control:focus,.dla-site .form-select:focus{border-color:#D71920;box-shadow:0 0 0 .2rem rgba(215,25,32,.18)}

/* v1.5.7 – Contact Form 7 layout, scoped to DLA contact panel */
.dla-site .dla-contact-form-panel,.dla-site .dla-contact-form-panel *{box-sizing:border-box}
.dla-site .dla-contact-form-panel{min-width:0}
.dla-site .dla-contact-form-panel .wpcf7,.dla-site .dla-contact-form-panel .wpcf7 form,.dla-site .dla-contact-form-panel .dla-contact-form{width:100%;max-width:100%;min-width:0}
.dla-site .dla-contact-form-panel .dla-contact-form .row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:20px;margin:0}
.dla-site .dla-contact-form-panel .dla-contact-form .row>[class*="col-"]{grid-column:span 1;min-width:0;width:100%;max-width:100%;padding:0;margin:0}
.dla-site .dla-contact-form-panel .dla-contact-form .row>.col-12{grid-column:1/-1}
.dla-site .dla-contact-form-panel .dla-contact-form label{display:block;margin:0 0 7px;font-size:14px;line-height:1.4;font-weight:700;color:#2A2A28}
.dla-site .dla-contact-form-panel .wpcf7-form-control-wrap{display:block;width:100%;min-width:0}
.dla-site .dla-contact-form-panel .wpcf7 input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.dla-site .dla-contact-form-panel .wpcf7 select,
.dla-site .dla-contact-form-panel .wpcf7 textarea{display:block;width:100%;max-width:100%;min-width:0;min-height:48px;padding:12px 14px;border:1px solid #BFC1BE;border-radius:3px;background:#fff;color:#2A2A28;font:inherit;font-size:15px;line-height:1.45;box-shadow:none;appearance:auto}
.dla-site .dla-contact-form-panel .wpcf7 textarea{min-height:155px;resize:vertical}
.dla-site .dla-contact-form-panel .wpcf7 :is(input,select,textarea):focus-visible{outline:3px solid rgba(215,25,32,.32);outline-offset:2px;border-color:#D71920;box-shadow:none}
.dla-site .dla-contact-form-panel .wpcf7 select:focus,.dla-site .dla-contact-form-panel .wpcf7 input:focus,.dla-site .dla-contact-form-panel .wpcf7 textarea:focus{border-color:#D71920;box-shadow:0 0 0 3px rgba(215,25,32,.12)}
.dla-site .dla-contact-form-panel .dla-privacy-note{margin:0;font-size:13px;line-height:1.65;color:#626260}
.dla-site .dla-contact-form-panel .dla-privacy-note a{color:#B81118;text-decoration:underline;text-underline-offset:3px}
.dla-site .dla-contact-form-panel .wpcf7 input[type="submit"]{display:inline-flex;width:auto;min-height:48px;padding:13px 25px;border:1px solid #D71920;border-radius:3px;background:#D71920;color:#fff;font-weight:800;font-size:14px;cursor:pointer;transition:background-color .18s,border-color .18s}
.dla-site .dla-contact-form-panel .wpcf7 input[type="submit"]:hover{background:#B81118;border-color:#B81118}
.dla-site .dla-contact-form-panel .wpcf7 input[type="submit"]:active{background:#9F1117;border-color:#9F1117}
.dla-site .dla-contact-form-panel .wpcf7-not-valid-tip{display:block;margin-top:6px;font-size:12px;color:#A20F17}
.dla-site .dla-contact-form-panel .wpcf7 .wpcf7-not-valid{border-color:#B81118!important}
.dla-site .dla-contact-form-panel .wpcf7-response-output{margin:20px 0 0!important;padding:13px 16px!important;border:1px solid #D71920!important;border-left:4px solid #D71920!important;border-radius:3px;background:#FFF2F2;color:#642027;font-size:14px}
.dla-site .dla-contact-form-panel .wpcf7 form.sent .wpcf7-response-output{border-color:#426B50!important;background:#F0F8F1;color:#24462F}
@media(max-width:700px){.dla-site .dla-contact-form-panel .dla-contact-form .row{grid-template-columns:minmax(0,1fr)}.dla-site .dla-contact-form-panel .dla-contact-form .row>[class*="col-"]{grid-column:1/-1}}

/* DLA v1.5.8: CF7 response messages are visible only after a submission result. */
.dla-site .wpcf7 form .wpcf7-response-output { display: none !important; }
.dla-site .wpcf7 form.sent .wpcf7-response-output,
.dla-site .wpcf7 form.invalid .wpcf7-response-output,
.dla-site .wpcf7 form.failed .wpcf7-response-output,
.dla-site .wpcf7 form.spam .wpcf7-response-output,
.dla-site .wpcf7 form.aborted .wpcf7-response-output,
.dla-site .wpcf7 form.unaccepted .wpcf7-response-output,
.dla-site .wpcf7 form.payment-required .wpcf7-response-output { display: block !important; }


/* v1.5.10: Gutenberg button block wrapper must not be styled as a button. */
.dla-site .wp-block-button.btn{display:inline-block!important;background:transparent!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important;transform:none!important;min-width:0!important;color:inherit!important;}
.dla-site .wp-block-button.btn:hover,.dla-site .wp-block-button.btn:active,.dla-site .wp-block-button.btn:focus{background:transparent!important;border:0!important;box-shadow:none!important;transform:none!important;}
.dla-site .wp-block-button.btn .wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:15px 22px;border:1px solid transparent;border-radius:3px;font-size:13px;font-weight:800;line-height:1.5;text-decoration:none;transition:background-color .2s,transform .2s,border-color .2s;box-shadow:none;}
.dla-site .wp-block-button.btn-primary .wp-block-button__link{background:#D71920;color:#fff;border-color:#D71920;}
.dla-site .wp-block-button.btn-primary .wp-block-button__link:hover{background:#b81118;color:#fff;border-color:#b81118;transform:translateY(-2px);}
.dla-site .wp-block-button.btn-outline .wp-block-button__link{background:transparent;color:#2A2A28;border-color:#aaa9a1;}
.dla-site .hero .wp-block-button.btn-outline .wp-block-button__link{color:#fff;border-color:#999;}
.dla-site .wp-block-button.btn-outline .wp-block-button__link:hover{background:rgba(127,127,127,.13);}
.dla-site .wp-block-button.btn-light .wp-block-button__link{background:#fff;color:#2A2A28;border-color:#fff;}
.dla-site .wp-block-button.btn-light .wp-block-button__link:hover{background:#f0f0ef;color:#2A2A28;transform:translateY(-2px);}
.dla-site .wp-block-button.btn .wp-block-button__link:focus-visible{outline:3px solid #D71920;outline-offset:3px;}
.dla-site .cta .wp-block-button.btn-light .wp-block-button__link:focus-visible{outline-color:#2A2A28;}
@media(prefers-reduced-motion:reduce){.dla-site .wp-block-button.btn .wp-block-button__link{transition:none!important;transform:none!important;}}


/* v1.5.11 – CF7 response text: no overlapping pseudo-icon, balanced padding. */
.dla-site .dla-contact-form-panel .wpcf7 form .wpcf7-response-output {
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  max-width:100%!important;
  margin:18px 0 0!important;
  padding:14px 18px!important;
  font-size:14px!important;
  line-height:1.55!important;
  overflow-wrap:anywhere;
  background-image:none!important;
  box-shadow:none!important;
}
.dla-site .dla-contact-form-panel .wpcf7 form .wpcf7-response-output::before,
.dla-site .dla-contact-form-panel .wpcf7 form .wpcf7-response-output::after {
  content:none!important;
  display:none!important;
}
.dla-site .dla-contact-form-panel .wpcf7 form .wpcf7-response-output > * {margin-top:0;margin-bottom:0}


/* v1.5.12: refined legal overlay with its own scrollable content. */
.dla-legal-dialog {
  box-sizing:border-box;
  width:min(920px,calc(100vw - 40px));
  max-width:920px;
  max-height:min(88dvh,920px);
  margin:auto;
  padding:0;
  border:1px solid rgba(255,255,255,.15);
  border-radius:8px;
  background:#fff;
  color:#2A2A28;
  box-shadow:0 32px 90px rgba(0,0,0,.42);
  overflow:hidden;
}
.dla-legal-dialog[open] {display:flex;flex-direction:column;}
.dla-legal-dialog::backdrop {background:rgba(20,20,19,.76);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);}
.dla-legal-dialog .dla-dialog-top {
  position:relative;top:auto;flex:0 0 auto;
  background:#2A2A28;color:#fff;
  border-bottom:4px solid #D71920;
  padding:20px 26px;
}
.dla-legal-dialog .dla-dialog-top h2 {font-size:clamp(22px,3vw,30px);font-weight:800;letter-spacing:-.5px;}
.dla-legal-dialog .dla-dialog-close {
  display:grid;place-items:center;flex:0 0 auto;
  width:44px;height:44px;min-width:44px;min-height:44px;
  padding:0;border:1px solid rgba(255,255,255,.5);
  border-radius:4px;background:transparent;color:#fff;
  font-size:29px;font-weight:400;line-height:1;
  box-shadow:none;transition:background .2s,border-color .2s;
}
.dla-legal-dialog .dla-dialog-close:hover {background:#D71920;border-color:#D71920;color:#fff;}
.dla-legal-dialog .dla-dialog-close:focus-visible {outline:3px solid #fff!important;outline-offset:3px!important;box-shadow:0 0 0 6px #D71920!important;}
.dla-legal-dialog .dla-dialog-content {
  flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;
  padding:30px clamp(22px,4vw,44px);
  scrollbar-color:#a5a5a1 #f2f2f0;
  scrollbar-width:thin;
}
.dla-legal-dialog .dla-dialog-content :is(h2,h3,h4) {color:#2A2A28;line-height:1.2;letter-spacing:-.5px;margin-top:1.3em;margin-bottom:.5em;}
.dla-legal-dialog .dla-dialog-content > :first-child {margin-top:0;}
.dla-legal-dialog .dla-dialog-content p,.dla-legal-dialog .dla-dialog-content li {line-height:1.75;}
.dla-legal-dialog .dla-dialog-content a {color:#B81118;text-decoration:underline;text-underline-offset:3px;}
.dla-legal-dialog .dla-dialog-bottom {
  flex:0 0 auto;padding:13px 26px;background:#f7f7f5;
  border-top:1px solid #e4e4e1;text-align:right;
}
.dla-legal-dialog .dla-dialog-bottom a {font-size:13px;font-weight:700;}
@media(max-width:650px) {
  .dla-legal-dialog {width:calc(100vw - 20px);max-height:calc(100dvh - 24px);}
  .dla-legal-dialog .dla-dialog-top {padding:15px 18px;}
  .dla-legal-dialog .dla-dialog-content {padding:22px 18px;}
  .dla-legal-dialog .dla-dialog-bottom {padding:12px 18px;}
}

/* v1.5.13: Sticky Footer (not fixed) and GRAF-inspired four-column DLA footer */
html,body{min-height:100%}
body .dla-site{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
body .dla-site > footer.dla-footer{margin-top:auto;flex-shrink:0}
.dla-site .dla-footer{background:#171819;color:#fff;padding:64px 0 22px;border-top:4px solid #D71920}
.dla-site .dla-footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr .85fr;gap:clamp(24px,4vw,64px);align-items:start}
.dla-site .dla-footer-brand .brand-logo{width:154px;height:auto;max-width:100%;display:block}
.dla-site .dla-footer-brand p{font-size:14px;color:#f05b60;font-weight:800;margin:10px 0 0}
.dla-site .dla-footer-col h2{font-size:12px;line-height:1.4;letter-spacing:1.8px;text-transform:uppercase;color:#fff;font-weight:800;margin:4px 0 16px}
.dla-site .dla-footer-col address{font-style:normal;color:#c5c5c5;line-height:1.85;font-size:14px}
.dla-site .dla-footer-col a{display:block;width:fit-content;max-width:100%;overflow-wrap:anywhere;color:#c5c5c5;font-size:14px;line-height:1.7;margin:0 0 8px;text-decoration:none}
.dla-site .dla-footer-col a:hover{color:#ff646a;text-decoration:underline;text-underline-offset:3px}
.dla-site .dla-footer-bottom{border-top:1px solid #444547;margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:#aeb0b0;font-size:12px}
@media(max-width:900px){.dla-site .dla-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}}
@media(max-width:560px){.dla-site .dla-footer{padding:42px 0 20px}.dla-site .dla-footer-grid{grid-template-columns:1fr;gap:28px}.dla-site .dla-footer-bottom{margin-top:30px}}
