/* Dadaire Enterprise Site 2.0 | scoped, maintainable page design */
:root{--dce-navy:#17324D;--dce-green:#176B4D;--dce-gold:#E5AA45;--dce-gold-dark:#CE922E;--dce-surface:#F7F9F6;--dce-text:#465568;--dce-line:#E3EAE7;--dce-width:1240px;--dce-reading:740px}
body.dce-layout{background:#fff}
body.dce-layout #main.dce-main{width:100%;max-width:none;margin:0;padding:0;min-height:40vh;display:block;background:#fff}
.dce-main,.dce-main *{box-sizing:border-box}
.dce-main{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--dce-navy);font-size:16px;line-height:1.7}
.dce-main h1,.dce-main h2,.dce-main h3,.dce-main h4{font-family:Manrope,Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--dce-navy);letter-spacing:-.035em;font-weight:800;line-height:1.16;margin:0}
.dce-main p{margin:0;color:var(--dce-text)}
.dce-main a:not(.dce-button){color:var(--dce-green);text-underline-offset:3px}
.dce-main a:hover{color:var(--dce-navy)}
.dce-main :is(a,button,input,select,textarea):focus-visible{outline:3px solid var(--dce-green);outline-offset:3px}
.dce-container{width:min(calc(100% - 96px),var(--dce-width));margin-inline:auto}
.dce-section{padding:clamp(90px,8.4vw,132px) 0;background:#fff}
.dce-section--muted{background:var(--dce-surface)}
.dce-section--article{padding-top:72px}
.dce-eyebrow{display:block;font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;line-height:1.5;color:var(--dce-green)}
.dce-rule{display:block;width:82px;height:3px;background:var(--dce-gold);margin:27px 0 29px}
.dce-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:70px;margin-bottom:44px}
.dce-section-head>div{flex:1;max-width:750px}
.dce-section-head h2{font-size:clamp(32px,3vw,43px);margin-top:14px}
.dce-section-head>p{max-width:400px;flex:0 1 38%;font-size:16px;line-height:1.85}
.dce-section-head--narrow{display:block;max-width:800px}
.dce-section-head--narrow>p{margin-top:21px;max-width:580px}
.dce-main h2{font-size:clamp(30px,3.1vw,43px)}
.dce-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:35px}
.dce-button,.dce-main .dce-button{display:inline-flex;align-items:center;justify-content:center;gap:22px;border:1px solid transparent;border-radius:8px;padding:14px 25px;min-height:51px;background:var(--dce-gold);color:var(--dce-navy)!important;font-size:14px;font-weight:750;line-height:1.25;text-decoration:none;transition:background-color .2s ease,transform .2s ease;white-space:normal}
.dce-button:hover{background:var(--dce-gold-dark);transform:translateY(-1px)}
.dce-button--secondary,.dce-main .dce-button--secondary{background:transparent;border-color:var(--dce-green);color:var(--dce-green)!important}
.dce-button--secondary:hover{background:#E7F1EC;color:var(--dce-green)!important}
.dce-button--navy,.dce-main .dce-button--navy{background:var(--dce-navy);color:#fff!important}
.dce-button--navy:hover{background:var(--dce-green)}
/* Full-bleed hero across ALL Dadaire custom routes. */
.dce-hero{width:100%;max-width:none;overflow:hidden;background:linear-gradient(105deg,#fff 10%,#F9FBF8 55%,#EDF4EF)}
.dce-hero-inner{display:grid;grid-template-columns:minmax(0,50%) minmax(0,50%);width:100%;min-height:clamp(490px,40vw,590px);margin:0}
.dce-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0;max-width:780px;padding:72px clamp(30px,4.3vw,76px) 72px max(48px,calc((100vw - 1240px)/2));position:relative;z-index:1}
.dce-hero h1{font-size:clamp(39px,4.1vw,62px);line-height:1.105;letter-spacing:-.049em;max-width:760px;margin-top:22px;overflow-wrap:normal}
.dce-hero h1 em{font-style:normal;color:var(--dce-green)}
.dce-hero-copy>p{max-width:620px;font-size:clamp(15px,1.24vw,18px);line-height:1.8}
.dce-visual{position:relative;overflow:hidden;background:linear-gradient(135deg,#E5EDE8,#CEDDD5 55%,#F2E7D6);isolation:isolate}
.dce-visual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.48)}
.dce-visual::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 50%,rgb(23 107 77 / 9%));pointer-events:none}
.dce-hero-image{min-height:490px;align-self:stretch}
.dce-hero-image::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(255,255,255,.3),transparent 25%);pointer-events:none}
.dce-image-label{position:absolute;z-index:2;bottom:16px;left:16px;display:inline-block;padding:6px 9px;background:rgba(255,255,255,.89);border-radius:3px;font-size:10px;font-weight:800;letter-spacing:.08em;color:var(--dce-navy);line-height:1.2}
/* Cards */
.dce-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px}
.dce-card-grid--three{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.dce-card{border:1px solid var(--dce-line);border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 12px 38px rgb(23 50 77 / 3%);display:flex;flex-direction:column;min-width:0;transition:transform .22s ease,box-shadow .22s ease}
.dce-card:hover{transform:translateY(-3px);box-shadow:0 14px 40px rgb(23 50 77 / 8%)}
.dce-card-img{display:block;overflow:hidden}
.dce-card .dce-visual{aspect-ratio:4/3}
.dce-card-body{padding:28px 24px 31px;display:flex;flex-direction:column;flex:1}
.dce-card h3{font-size:19px;line-height:1.3;letter-spacing:-.03em}
.dce-card h3 a{color:var(--dce-navy)!important;text-decoration:none}
.dce-card h3 a:hover{color:var(--dce-green)!important}
.dce-card p{font-size:14px;line-height:1.8;margin-top:14px;flex:1}
.dce-text-link{font-weight:750;display:inline-flex;gap:11px;margin-top:25px;text-decoration:none;font-size:13px;align-items:center}
.dce-section-bottom-link{margin-top:36px;text-align:center}
/* Editorial layout */
.dce-breadcrumbs{margin:0 0 55px}
.dce-breadcrumbs ol{display:flex;flex-wrap:wrap;align-items:center;gap:9px;list-style:none;padding:0;margin:0}
.dce-breadcrumbs li{font-size:13px;color:var(--dce-text)}
.dce-breadcrumbs li+li::before{content:"/";margin-right:9px;color:#94AAA5}
.dce-reading-layout{display:grid;grid-template-columns:minmax(0,760px) minmax(280px,320px);justify-content:space-between;gap:clamp(50px,6.5vw,104px);align-items:start}
.dce-reading-main{min-width:0}
.dce-reading-main>.dce-eyebrow{margin-bottom:15px}
.dce-reading-main>h2{margin-bottom:30px}
.dce-editorial{color:var(--dce-text);font-size:16px;line-height:1.91;max-width:var(--dce-reading)}
.dce-editorial>*+*{margin-top:21px}
.dce-editorial p{margin-top:0;margin-bottom:20px}
.dce-editorial h2{font-size:clamp(25px,2.4vw,34px);margin-top:50px;margin-bottom:20px;line-height:1.3}
.dce-editorial h3{font-size:21px;margin-top:34px;margin-bottom:16px;line-height:1.36}
.dce-editorial ul,.dce-editorial ol{padding-left:26px;margin-bottom:25px}
.dce-editorial li+li{margin-top:8px}
.dce-editorial a{text-decoration:underline;text-decoration-thickness:1px}
.dce-editorial blockquote{border-left:3px solid var(--dce-gold);padding-left:28px;margin:36px 0}
.dce-reading-side{min-width:0;position:sticky;top:112px}
.dce-aside-card{padding:34px;background:var(--dce-surface);border:1px solid var(--dce-line);border-radius:12px}
.dce-aside-card h3{font-size:20px;margin-bottom:22px}
.dce-aside-card p{font-size:14px;line-height:1.8;margin-bottom:13px}
.dce-aside-card ul{list-style:none;padding:0;margin:0}
.dce-aside-card li{padding:12px 0;border-bottom:1px solid var(--dce-line);font-size:14px;line-height:1.55}
.dce-aside-card li:last-child{border-bottom:none}
.dce-aside-card a:not(.dce-button){text-decoration:none;font-weight:650}
.dce-aside-card .dce-button{margin-top:20px;width:100%;font-size:13px}
.dce-inline-cta{background:var(--dce-surface);padding:40px;border-radius:12px;margin-top:60px}
.dce-inline-cta h2{font-size:28px}
.dce-inline-cta p{margin:17px 0 27px;line-height:1.8}
/* About, two-column editorial and core values */
.dce-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.dce-feature{padding:clamp(33px,4.1vw,62px);border-radius:12px;min-height:350px}
.dce-feature--green{background:var(--dce-green)}
.dce-feature--light{background:var(--dce-surface);border:1px solid var(--dce-line)}
.dce-feature-number{display:block;margin-bottom:46px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.dce-feature h3{font-size:clamp(26px,2.5vw,35px);margin-bottom:22px}
.dce-feature p{font-size:16px;line-height:1.8}
.dce-feature--green :is(h3,p,.dce-feature-number){color:#fff}
.dce-feature--light .dce-feature-number{color:var(--dce-green)}
.dce-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 56px}
.dce-value-grid article{border-top:1px solid var(--dce-line);padding:26px 0 8px}
.dce-value-grid article>span{font-size:12px;letter-spacing:.16em;color:var(--dce-green);font-weight:800}
.dce-value-grid h3{font-size:21px;margin-top:19px;line-height:1.36}
.dce-value-grid p{font-size:15px;line-height:1.84;margin-top:15px}
.dce-two-up{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:start}
.dce-two-up h2{margin-top:19px}
.dce-two-up>div:nth-child(2)>p{font-size:17px;line-height:1.91;margin:0 0 22px}
.dce-two-up .dce-button{margin-top:14px}
/* Contact form */
.dce-contact-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.25fr);gap:clamp(48px,8vw,115px);align-items:start}
.dce-contact-details h2{font-size:29px;margin-bottom:20px}
.dce-contact-details h3{font-size:14px;margin:26px 0 4px;letter-spacing:.03em}
.dce-contact-details p{font-size:16px;line-height:1.8}
.dce-contact-details a{text-decoration:none;font-weight:750}
.dce-contact-aside{margin-top:56px;padding:29px;background:var(--dce-surface);border-radius:12px}
.dce-contact-aside h3{font-size:21px;margin-bottom:15px}
.dce-contact-aside p{line-height:1.8;font-size:15px}
.dce-contact-aside .dce-button{margin-top:24px}
.dce-contact-panel{padding:clamp(28px,3.5vw,55px);border:1px solid var(--dce-line);border-radius:14px;background:#fff;box-shadow:0 20px 60px rgb(23 50 77 / 5%)}
.dce-contact-panel h3{font-size:29px;margin-bottom:11px}
.dce-contact-panel>p{font-size:15px;line-height:1.75}
.dce-contact-form{margin-top:31px;display:grid;gap:23px}
.dce-contact-form label{font-size:14px;color:var(--dce-navy);font-weight:750;display:block;line-height:1.5}
.dce-contact-form :is(input:not([type=checkbox]),textarea,select){width:100%;display:block;margin-top:9px;padding:14px 15px;font:inherit;font-size:15px;color:var(--dce-navy);background:#fff;border:1px solid #CAD8D4;border-radius:8px;min-height:49px}
.dce-contact-form textarea{resize:vertical;min-height:145px}
.dce-form-two{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.dce-contact-form .dce-consent{display:flex;align-items:flex-start;gap:13px;font-weight:450;line-height:1.65}
.dce-consent input{width:19px;height:19px;margin-top:4px;flex:none;accent-color:var(--dce-green)}
.dce-consent a{text-decoration:underline}
.dce-honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.dce-contact-form .dce-button{justify-self:start;cursor:pointer}
.dce-small-note{font-size:12px!important;line-height:1.7!important;color:#536778!important}
.dce-form-status{background:#EAF4EC;color:var(--dce-green);border-left:3px solid var(--dce-green);padding:18px;font-size:15px}
/* Sitewide action band, independent of Blocksy global footer. */
.dce-bottom-cta{padding:80px 0;background:var(--dce-navy)}
.dce-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.dce-bottom-cta :is(h2,p){color:#fff}
.dce-bottom-cta .dce-eyebrow{color:var(--dce-gold)}
.dce-bottom-cta h2{font-size:clamp(29px,3vw,41px);margin:15px 0 16px}
.dce-bottom-cta p{max-width:650px;font-size:16px;line-height:1.8}
.dce-bottom-inner .dce-button{flex:none}
/* Existing homepage: full width hero; leave header and section content unchanged. */
body.home #main .dco-hero{position:relative;left:50%;transform:translateX(-50%);width:100vw!important;max-width:none!important;margin:0!important}
body.home #main .dco-hero-layout{width:100%!important;max-width:none!important}
body.home #main .dco-hero-copy{padding-left:max(48px,calc((100vw - 1240px)/2))}
/* Do not allow incidental scrollbar caused by 100vw in homepage full-bleed block. */
body.home{overflow-x:clip}
@media(min-width:1440px){body.home #main .dco-hero-layout{grid-template-columns:minmax(0,48%) minmax(0,52%)}}
@media (max-width:1439px){.dce-hero-inner{min-height:520px}.dce-hero-copy{padding-left:48px;padding-top:56px;padding-bottom:56px}.dce-hero h1{font-size:clamp(39px,4vw,54px)}.dce-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1023px){
 .dce-container{width:min(calc(100% - 64px),var(--dce-width))}
 .dce-section{padding:88px 0}
 .dce-hero-inner{grid-template-columns:1fr 1fr;min-height:480px}
 .dce-hero-copy{padding:48px 32px}
 .dce-hero h1{font-size:clamp(33px,4vw,44px)}
 .dce-hero-image{min-height:480px}
 .dce-card-grid,.dce-card-grid--three{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
 .dce-reading-layout{grid-template-columns:minmax(0,1fr)}
 .dce-reading-side{position:static;max-width:680px}
 .dce-value-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
 .dce-contact-layout{gap:36px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
 .dce-section-head{gap:30px}
}
@media(max-width:767px){
 .dce-container{width:min(calc(100% - 40px),var(--dce-width))}
 .dce-section{padding:74px 0}
 .dce-section--article{padding-top:45px}
 .dce-section-head{display:block;margin-bottom:32px}
 .dce-section-head h2{font-size:31px}
 .dce-section-head>p{font-size:15px;margin-top:19px}
 .dce-hero-inner{display:flex;flex-direction:column;min-height:0}
 .dce-hero-copy{padding:65px 20px 51px}
 .dce-hero h1{font-size:clamp(34px,8.8vw,46px);line-height:1.14;letter-spacing:-.042em;margin-top:19px}
 .dce-hero-copy>p{font-size:16px}
 .dce-hero-image{min-height:0;height:320px}
 .dce-rule{margin:25px 0}
 .dce-actions{gap:12px;margin-top:28px}
 .dce-actions .dce-button{width:100%;justify-content:space-between}
 .dce-card-grid,.dce-card-grid--three,.dce-feature-grid,.dce-value-grid,.dce-two-up,.dce-contact-layout{grid-template-columns:1fr}
 .dce-card-body{padding:26px}
 .dce-card .dce-visual{aspect-ratio:16/10}
 .dce-feature{min-height:auto;padding:37px 28px}
 .dce-feature-number{margin-bottom:32px}
 .dce-two-up{gap:28px}
 .dce-two-up>div:nth-child(2)>p{font-size:16px}
 .dce-reading-layout{gap:48px}
 .dce-breadcrumbs{margin-bottom:33px}
 .dce-editorial{font-size:16px;line-height:1.84}
 .dce-editorial h2{font-size:27px;margin-top:40px}
 .dce-editorial h3{font-size:20px}
 .dce-aside-card,.dce-inline-cta{padding:26px}
 .dce-form-two{grid-template-columns:1fr}
 .dce-contact-panel{padding:27px 22px}
 .dce-bottom-cta{padding:70px 0 110px}
 .dce-bottom-inner{display:block}
 .dce-bottom-cta .dce-button{margin-top:27px}
 body.home #main .dco-hero-copy{padding-left:20px}
}
@media(max-width:420px){.dce-hero-image{height:255px}.dce-hero-copy{padding-top:56px}.dce-main .dce-button{font-size:13px}}
@media(prefers-reduced-motion:reduce){.dce-main *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Font Awesome subset SVG alignment */
.dce-main .dci-icon { width: .88em; height: .88em; }
