/* GLOW DETAIL V5.40 — clean reference-based landing and dark sitewide polish.
   Landing markup uses gd40-* classes to avoid historic v5.31-v5.39 hero conflicts. */
:root{--gd40-ink:#f7f5f1;--gd40-cream:#ddc9b7;--gd40-muted:#c5c1bd;--gd40-surface:#1d1d1f;--gd40-border:rgba(236,227,218,.17)}
body.gd40-home{background:#0f1012!important;color:var(--gd40-ink)!important;overflow-x:hidden}
body.gd40-home .site{background:#0f1012!important}
body.gd40-home .site-header,
.site-header{background:#111214!important;color:#f6f4f1!important;border-bottom:1px solid #3d3d3e!important}
.site-header .header-inner{max-width:1360px;min-height:67px}
.site-header .menu a{color:#efecea!important}
.site-header .menu a.current:after,.site-header .menu a:hover:after{background:#e1d3c5!important}
.site-header .btn-gold{background:var(--gd40-cream)!important;color:#111213!important;box-shadow:none!important}
.gd40-header-socials{display:flex;align-items:center;gap:9px;padding-left:15px;border-left:1px solid #4c4c4c}
.gd40-header-socials a{display:grid;place-items:center;width:29px;height:29px;color:#f2f0ed;font-size:16px;font-weight:800;text-transform:none;border-radius:50%;line-height:1}
.gd40-header-socials a:hover{background:#2b2c2f}
@media(max-width:980px){.gd40-header-socials{display:none}}

/* HERO — separate photograph column avoids cover/stretch/focus drift on resize. */
body.gd40-home .gd40-hero{position:relative!important;min-height:472px!important;overflow:hidden!important;background:#111214!important;color:#fff!important;isolation:isolate}
body.gd40-home .gd40-hero-photo{position:absolute;top:0;right:0;bottom:0;width:min(61%,1000px);max-width:none;height:100%;display:flex;align-items:center;justify-content:flex-end;overflow:hidden;z-index:0}
body.gd40-home .gd40-hero-photo img{width:100%;height:auto;max-height:100%;object-fit:contain;object-position:right center;filter:saturate(.89) brightness(.96);display:block;transform:none!important}
body.gd40-home .gd40-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#111214 0%,#111214 26%,rgba(17,18,20,.92) 36%,rgba(17,18,20,.55) 51%,rgba(17,18,20,.03) 76%),linear-gradient(0deg,#111214 0%,transparent 21%,transparent 85%,rgba(17,18,20,.12));z-index:1;pointer-events:none}
body.gd40-home .gd40-hero-content{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-height:472px;max-width:1300px;padding-top:40px;padding-bottom:42px;text-align:left}
body.gd40-home .gd40-kicker{display:flex;gap:9px;align-items:center;flex-wrap:wrap;margin-bottom:17px;font-size:10px;font-weight:750;letter-spacing:.25em;line-height:1.55;color:#f6f3f0}
body.gd40-home .gd40-kicker i{width:3px;height:3px;background:#dac8b8;border-radius:50%;display:inline-block;flex:0 0 auto}
body.gd40-home .gd40-hero h1{font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:clamp(70px,7.6vw,112px)!important;letter-spacing:-.075em!important;line-height:.87!important;color:#fff!important;font-weight:900!important;text-transform:uppercase;max-width:555px!important;margin:0 0 22px!important;white-space:normal}
body.gd40-home .gd40-hero h1 span{display:block;font-family:inherit!important;font-weight:inherit!important;font-style:normal!important;letter-spacing:inherit!important;color:#ddcbb9!important}
body.gd40-home .gd40-hero-desc{max-width:495px!important;margin:0 0 24px!important;color:#f3f0ed!important;font-size:clamp(16px,1.45vw,20px)!important;line-height:1.38!important;font-weight:550}
body.gd40-home .gd40-hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
body.gd40-home .gd40-btn{min-height:48px!important;padding:0 23px!important;border-radius:12px!important;font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:13px!important;font-weight:750!important;display:inline-flex!important;align-items:center;justify-content:center;white-space:normal;text-align:center;letter-spacing:-.015em;box-shadow:none!important;transform:none!important}
body.gd40-home .gd40-btn-main{color:#121213!important;background:#ddcbb9!important;border:1px solid #ddcbb9!important}
body.gd40-home .gd40-btn-quiet{color:#fff!important;background:rgba(31,33,36,.75)!important;border:1px solid rgba(235,230,224,.32)!important}
body.gd40-home .gd40-btn:hover{filter:brightness(1.10)}
body.gd40-home .gd40-hero-meta{display:flex;gap:15px;align-items:center;flex-wrap:wrap;color:#d2cfcb;font-size:12px;margin-top:20px;line-height:1.55}
body.gd40-home .gd40-hero-meta b{width:1px;height:18px;background:#77736f;display:block}

/* DIRECTION CARDS — modern editorial photo surfaces, mild radius, no circular arrows. */
body.gd40-home .gd40-directions{background:linear-gradient(180deg,#1c1c1e 0%,#111214 100%)!important;color:#f7f4f1!important;padding:22px 0 32px}
body.gd40-home .gd40-section-kicker{text-align:center;font-size:10px;font-weight:650;letter-spacing:.29em;color:#c7c3bf;margin-bottom:10px}
body.gd40-home .gd40-directions h2{text-align:center;margin:0 auto 25px;font-family:'Montserrat','Inter',Arial,sans-serif;font-size:clamp(21px,2.7vw,33px);font-weight:790;letter-spacing:-.035em;color:#fff!important;line-height:1.22}
body.gd40-home .gd40-directions h2 span{color:#d7c1ad!important}
body.gd40-home .gd40-direction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
body.gd40-home .gd40-direction-card{display:block;position:relative;min-height:276px;overflow:hidden;border-radius:14px;background:#1a1b1d;border:1px solid rgba(241,236,231,.21);color:#fff;isolation:isolate;box-shadow:none;transition:filter .2s ease}
body.gd40-home .gd40-direction-card:hover{filter:brightness(1.10)}
body.gd40-home .gd40-direction-card img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:cover;object-position:center center;filter:brightness(.83) saturate(.87);transform:none!important}
body.gd40-home .gd40-light img{object-position:center 54%}
body.gd40-home .gd40-skin img{object-position:56% 42%}
body.gd40-home .gd40-card-shade{position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,8,9,.96),rgba(7,8,9,.62) 33%,transparent 74%)}
body.gd40-home .gd40-card-info{position:absolute;left:25px;right:25px;bottom:21px;display:flex;flex-direction:column;align-items:flex-start;z-index:2}
body.gd40-home .gd40-card-info strong{font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:clamp(31px,3vw,42px)!important;font-style:normal;font-weight:820;letter-spacing:-.06em;line-height:1;color:#fff!important;white-space:nowrap}
body.gd40-home .gd40-card-info strong em{font-size:inherit;font-style:normal;font-weight:740;letter-spacing:-.065em;color:#fff}
body.gd40-home .gd40-card-info small{color:#e5ddda;font-size:10px;letter-spacing:.21em;font-weight:650;margin:6px 0 8px}
body.gd40-home .gd40-card-info>span{color:#e6e1dd;font-size:12px;line-height:1.42;max-width:80%}
body.gd40-home .gd40-services-rail{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;margin-top:21px}
body.gd40-home .gd40-services-rail a{display:flex;align-items:center;gap:12px;padding:5px 12px;min-height:54px;font-size:12px;line-height:1.34;color:#e9e5e1;min-width:0}
body.gd40-home .gd40-services-rail a+a{border-left:1px solid rgba(225,222,219,.20)}
body.gd40-home .gd40-services-rail a:hover{color:#fff}
body.gd40-home .gd40-rail-icon{display:grid;place-items:center;flex:0 0 33px;width:33px;height:34px;color:#e0cfbc}
body.gd40-home .gd40-rail-icon svg{display:block;width:30px;height:30px;stroke:#e0cfbc;stroke-width:1.45;fill:none;stroke-linecap:round;stroke-linejoin:round}

/* PICKER — one compact, functional panel echoing the mockup. */
body.gd40-home .gd40-finder-section{background:#111214!important;padding:21px 0 27px;color:#f5f1ec!important}
body.gd40-home .gd40-finder-panel{display:grid;grid-template-columns:minmax(0,.89fr) minmax(0,1.25fr);gap:24px;align-items:stretch;border:1px solid rgba(241,236,231,.17);border-radius:19px;padding:27px 31px;background:linear-gradient(130deg,#202022,#161719 65%);box-shadow:0 12px 32px rgba(0,0,0,.15)}
body.gd40-home .gd40-finder-intro{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:4px 25px 8px 0;border-right:1px solid rgba(235,232,229,.19)}
body.gd40-home .gd40-mini{font-size:10px;font-weight:730;letter-spacing:.23em;color:#c7bcaf;line-height:1.55;margin-bottom:10px}
body.gd40-home .gd40-finder-intro h2{font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:clamp(26px,3.1vw,42px)!important;line-height:1.07!important;letter-spacing:-.045em;font-weight:820;color:#fff!important;margin:0 0 13px}
body.gd40-home .gd40-finder-intro h2 span{color:#e0c9b5!important}
body.gd40-home .gd40-finder-intro p{font-size:14px;line-height:1.57;color:#dad6d1;max-width:480px;margin:0 0 10px}
body.gd40-home .gd40-finder-intro small{display:block;color:#aaa6a1;font-size:10px;line-height:1.5}
body.gd40-home .gd40-finder-controls{min-width:0;display:flex;flex-direction:column;gap:12px}
body.gd40-home .gd40-finder-question{font-size:13px;font-weight:750;color:#f1ece6}
body.gd40-home .gd40-problem-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
body.gd40-home .gd40-problem-grid .gd-finder-option{min-height:42px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;text-align:left!important;padding:10px 13px!important;border-radius:9px!important;border:1px solid rgba(244,233,220,.22)!important;background:#222326!important;color:#eee9e3!important;font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:12px!important;font-weight:650!important;line-height:1.24!important;transition:background .2s,border-color .2s;white-space:normal!important;box-shadow:none!important}
body.gd40-home .gd40-problem-grid .gd-finder-option:hover{background:#323336!important;border-color:#aaa196!important}
body.gd40-home .gd40-problem-grid .gd-finder-option.is-active,body.gd40-home .gd40-problem-grid .gd-finder-option[aria-pressed="true"]{background:#dbc7b5!important;border-color:#dbc7b5!important;color:#171617!important}
body.gd40-home .gd40-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:15px;align-items:center;background:#292a2d;border:1px solid rgba(236,232,228,.15);border-radius:13px;padding:15px 17px;margin-top:3px}
body.gd40-home .gd40-result-copy{min-width:0}
body.gd40-home .gd40-result-copy small{display:block;color:#cfbda9;font-size:9px;letter-spacing:.17em;font-weight:720;margin-bottom:4px}
body.gd40-home .gd40-result-copy h3{color:#f6f3ef!important;font-size:16px;font-weight:780;line-height:1.24;margin:0 0 5px}
body.gd40-home .gd40-result-copy p{color:#cecbc8!important;font-size:12px;line-height:1.48;margin:0}
body.gd40-home .gd40-result-actions{display:flex;flex-direction:column;gap:8px;align-items:stretch}
body.gd40-home .gd40-result-actions>a{font-size:12px;color:#f0e2d3!important;text-align:center;text-decoration:none;min-height:33px;display:grid;place-items:center}
body.gd40-home .gd40-result-actions .gd40-btn{min-height:38px!important;font-size:11px!important;padding:0 12px!important}

/* ABOUT — one horizontal image and a free-flowing copy block. */
body.gd40-home .gd40-about-preview{background:#111214!important;padding:21px 0 29px;color:#f3f0ed!important}
body.gd40-home .gd40-about-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:27px;align-items:center}
body.gd40-home .gd40-about-photo{display:block;overflow:hidden;border-radius:13px;position:relative;height:220px;background:#1b1b1d}
body.gd40-home .gd40-about-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transition:filter .25s}
body.gd40-home .gd40-about-photo:hover img{filter:brightness(1.12)}
body.gd40-home .gd40-about-copy{padding:14px 0}
body.gd40-home .gd40-about-copy h2{font-family:'Montserrat','Inter',Arial,sans-serif!important;font-size:clamp(30px,3vw,42px)!important;font-weight:840;letter-spacing:-.065em;line-height:1;margin:0 0 12px;color:#fff!important}
body.gd40-home .gd40-about-copy h2 span{color:#dac5b0!important}
body.gd40-home .gd40-about-copy p{font-size:13px;line-height:1.62;color:#d2ceca;margin:0 0 16px;max-width:530px}
body.gd40-home .gd40-inline-link{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(241,236,231,.30);border-radius:9px;padding:9px 15px;color:#f1ede8;font-size:12px;font-weight:720;min-height:36px}
body.gd40-home .gd40-inline-link:hover{background:#2b2d2f}

/* FAQ — spacious questions, no clipping, readable accordions. */
body.gd40-home .gd40-faq-section{background:#111214!important;padding:0 0 34px;color:#f5f3f0!important}
body.gd40-home .gd40-faq-panel{display:grid;grid-template-columns:minmax(0,.70fr) minmax(0,1.3fr);gap:36px;align-items:start;border:1px solid rgba(238,231,224,.22);border-radius:15px;background:#1b1c1e;padding:25px 33px}
body.gd40-home .gd40-faq-copy{padding-right:30px;border-right:1px solid rgba(246,238,230,.21)}
body.gd40-home .gd40-faq-copy h2{font-family:'Montserrat','Inter',Arial,sans-serif!important;color:#fff!important;font-size:clamp(25px,3vw,37px)!important;letter-spacing:-.055em;line-height:1.15;margin:0 0 9px;font-weight:820}
body.gd40-home .gd40-faq-copy p{color:#c9c5c0;font-size:12px;line-height:1.55;margin:0}
body.gd40-home .gd40-faq-items{min-width:0}
body.gd40-home .gd40-faq-items details{border-bottom:1px solid rgba(231,222,213,.28);padding:0!important;background:none!important}
body.gd40-home .gd40-faq-items details:last-child{border-bottom:0}
body.gd40-home .gd40-faq-items summary{cursor:pointer;display:flex;justify-content:space-between;gap:15px;align-items:center;color:#f6f3ef!important;font-size:13px;line-height:1.45;padding:12px 2px;list-style:none;font-weight:650}
body.gd40-home .gd40-faq-items summary::-webkit-details-marker{display:none}
body.gd40-home .gd40-faq-items summary span{color:#e1cbb6;font-size:20px;font-weight:400;flex:0 0 auto}
body.gd40-home .gd40-faq-items details[open] summary span{transform:rotate(45deg)}
body.gd40-home .gd40-faq-items details p{font-size:12px;line-height:1.6;color:#cfcac5!important;padding:0 20px 15px 2px;margin:0}

/* FOOTER on homepage */
body.gd40-home .footer{background:#121315!important;border-top:1px solid rgba(238,231,224,.15)!important}
body.gd40-home .footer-inner{max-width:1300px;min-height:74px;gap:20px;align-items:center;color:#d0ceca}
body.gd40-home .footer a{color:#dcd8d2!important}

/* Other pages: retain all existing content, make palette match new premium landing. */
body:not(.gd40-home) .page-services h1,
body:not(.gd40-home) .page-services h2,
body:not(.gd40-home) .page-services h3,
body:not(.gd40-home) .gd-about-page h1,
body:not(.gd40-home) .gd-about-page h2,
body:not(.gd40-home) .gd-about-page h3,
body:not(.gd40-home) .gd-optics-page h1,
body:not(.gd40-home) .gd-optics-page h2,
body:not(.gd40-home) .gd-optics-page h3{color:#f3f0eb!important}
body:not(.gd40-home) .gd-optics-page p,
body:not(.gd40-home) .gd-optics-page li,
body:not(.gd40-home) .gd-about-page p,
body:not(.gd40-home) .gd-about-page li,
body:not(.gd40-home) .page-services p,
body:not(.gd40-home) .page-services li{color:#d1ccc7!important}
body:not(.gd40-home) .gd-about-page .gd-about-value,
body:not(.gd40-home) .gd-about-page .gd-about-direction-card,
body:not(.gd40-home) .gd-about-page .gd-about-project-card,
body:not(.gd40-home) .gd-about-page .gd-about-steps li,
body:not(.gd40-home) .gd-contact-division{background:#252628!important;color:#f5f1ed!important;border-color:rgba(233,222,211,.20)!important}
body:not(.gd40-home) .gd-about-page .gd-about-value p,
body:not(.gd40-home) .gd-about-page .gd-about-direction-card p,
body:not(.gd40-home) .gd-contact-division p{color:#d2ccc5!important}
body:not(.gd40-home) .gd-about-page .gd-about-hero-visual{max-width:none!important;min-width:0!important}
body:not(.gd40-home) .gd-about-page .gd-about-hero-image{overflow:hidden!important}
body:not(.gd40-home) .gd-about-page .gd-about-hero-image img{width:100%!important;height:100%!important;object-fit:cover!important}
body:not(.gd40-home) .gd-faq-items details summary{padding-left:14px!important;padding-right:14px!important;color:#f3f0eb!important}
body:not(.gd40-home) .gd-faq-items details p{padding-left:14px!important;color:#ccc7c2!important}

@media(max-width:1100px){
 body.gd40-home .gd40-services-rail{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8px}
 body.gd40-home .gd40-services-rail a:nth-child(4){border-left:0}
 body.gd40-home .gd40-hero-photo{width:61%}
 body.gd40-home .gd40-hero-shade{background:linear-gradient(90deg,#111214 0%,#111214 24%,rgba(17,18,20,.90) 35%,rgba(17,18,20,.45) 58%,rgba(17,18,20,.02) 100%)}
}
@media(max-width:800px){
 body.gd40-home .gd40-hero{min-height:680px!important}
 body.gd40-home .gd40-hero-photo{left:0;right:0;top:0;bottom:auto;width:100%;height:300px;justify-content:center;align-items:start}
 body.gd40-home .gd40-hero-photo img{width:100%;height:auto;max-height:100%;object-fit:contain;object-position:center top}
 body.gd40-home .gd40-hero-shade{background:linear-gradient(180deg,rgba(17,18,20,.10) 0%,rgba(17,18,20,.36) 33%,#111214 51%,#111214 100%)}
 body.gd40-home .gd40-hero-content{min-height:680px;justify-content:flex-end;padding-top:290px;padding-bottom:45px}
 body.gd40-home .gd40-kicker{font-size:9px;letter-spacing:.17em;margin-bottom:16px}
 body.gd40-home .gd40-hero h1{font-size:clamp(61px,11vw,87px)!important}
 body.gd40-home .gd40-hero-desc{font-size:16px!important}
 body.gd40-home .gd40-finder-panel{grid-template-columns:1fr;gap:18px}
 body.gd40-home .gd40-finder-intro{border-right:0;border-bottom:1px solid rgba(235,232,229,.19);padding:0 0 19px}
 body.gd40-home .gd40-faq-panel{grid-template-columns:1fr;gap:18px}
 body.gd40-home .gd40-faq-copy{border-right:0;border-bottom:1px solid rgba(245,237,228,.21);padding:0 0 17px}
 body.gd40-home .gd40-about-grid{grid-template-columns:1fr;gap:15px}
 body.gd40-home .gd40-about-photo{height:260px}
}
@media(max-width:600px){
 body.gd40-home .wrap{width:calc(100% - 34px)}
 body.gd40-home .gd40-hero{min-height:646px!important}
 body.gd40-home .gd40-hero-photo{height:237px}
 body.gd40-home .gd40-hero-content{min-height:646px;padding-top:235px;padding-bottom:27px}
 body.gd40-home .gd40-hero h1{font-size:clamp(58px,14vw,75px)!important;margin-bottom:18px!important}
 body.gd40-home .gd40-hero-actions{gap:8px;flex-wrap:wrap}
 body.gd40-home .gd40-hero-actions .gd40-btn{min-height:43px!important;font-size:11px!important;padding:0 14px!important}
 body.gd40-home .gd40-hero-meta{margin-top:17px;font-size:10px;gap:9px}
 body.gd40-home .gd40-directions{padding-top:30px}
 body.gd40-home .gd40-directions h2{font-size:23px}
 body.gd40-home .gd40-directions h2 span{display:block}
 body.gd40-home .gd40-direction-grid{grid-template-columns:1fr;gap:12px}
 body.gd40-home .gd40-direction-card{min-height:230px}
 body.gd40-home .gd40-card-info{left:18px;right:18px;bottom:17px}
 body.gd40-home .gd40-card-info strong{font-size:32px!important}
 body.gd40-home .gd40-card-info small{font-size:9px;letter-spacing:.12em}
 body.gd40-home .gd40-card-info>span{max-width:100%;font-size:11px}
 body.gd40-home .gd40-services-rail{grid-template-columns:repeat(2,minmax(0,1fr))}
 body.gd40-home .gd40-services-rail a{font-size:11px;padding:7px 9px;gap:8px}
 body.gd40-home .gd40-services-rail a:nth-child(odd){border-left:0}
 body.gd40-home .gd40-services-rail a:nth-child(even){border-left:1px solid rgba(225,222,219,.20)}
 body.gd40-home .gd40-rail-icon{flex-basis:27px;width:27px}
 body.gd40-home .gd40-rail-icon svg{width:25px;height:25px}
 body.gd40-home .gd40-finder-panel{padding:21px 18px;border-radius:14px}
 body.gd40-home .gd40-finder-intro h2{font-size:29px!important}
 body.gd40-home .gd40-problem-grid{gap:7px}
 body.gd40-home .gd40-problem-grid .gd-finder-option{min-height:48px!important;font-size:11px!important;padding:10px 11px!important}
 body.gd40-home .gd40-result{grid-template-columns:1fr;gap:9px;padding:15px}
 body.gd40-home .gd40-result-actions{flex-direction:row;justify-content:flex-start;flex-wrap:wrap}
 body.gd40-home .gd40-about-photo{height:195px}
 body.gd40-home .gd40-faq-panel{padding:21px 18px}
 body.gd40-home .gd40-faq-items summary{font-size:12px;padding:13px 0}
 body.gd40-home .footer-inner{gap:13px;align-items:flex-start}
}

/* Optics page was still inheriting white feature cards from the original light theme. */
body:not(.gd40-home) .gd-optics-page .gd-optics-issue,
body:not(.gd40-home) .gd-optics-page .gd-optics-process-grid > div,
body:not(.gd40-home) .gd-optics-page .gd-optics-project,
body:not(.gd40-home) .gd-optics-page .gd-optics-mini-note,
body:not(.gd40-home) .gd-optics-page .gd-optics-faq-items details {
  background:#252628!important;
  border-color:#464448!important;
  color:#f5f1ed!important;
  box-shadow:none!important;
}
body:not(.gd40-home) .gd-optics-page .gd-optics-issue h3,
body:not(.gd40-home) .gd-optics-page .gd-optics-process-grid h3,
body:not(.gd40-home) .gd-optics-page .gd-optics-project h3,
body:not(.gd40-home) .gd-optics-page .gd-optics-solution h3,
body:not(.gd40-home) .gd-optics-page .gd-optics-faq-items summary,
body:not(.gd40-home) .gd-optics-page .gd-optics-section-heading h2 {color:#f5f1ed!important}
body:not(.gd40-home) .gd-optics-page .gd-optics-issue p,
body:not(.gd40-home) .gd-optics-page .gd-optics-process-grid p,
body:not(.gd40-home) .gd-optics-page .gd-optics-project p,
body:not(.gd40-home) .gd-optics-page .gd-optics-solution p,
body:not(.gd40-home) .gd-optics-page .gd-optics-mini-note *,
body:not(.gd40-home) .gd-optics-page .gd-optics-faq-items p {color:#d2ccc5!important}
body:not(.gd40-home) .gd-optics-page .gd-optics-issue a,
body:not(.gd40-home) .gd-optics-page .gd-optics-all-link,
body:not(.gd40-home) .gd-optics-page .gd-optics-project b {color:#dbc4ad!important}
body:not(.gd40-home) .gd-optics-page .gd-optics-issue a {text-decoration:none!important}

/* Reliable about page hero photo: one large picture, full height of the text column. */
body:not(.gd40-home) .gd-about-page .gd-about-hero-grid{
  align-items:stretch!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1.06fr)!important;
}
body:not(.gd40-home) .gd-about-page .gd-about-hero-visual{
  position:relative!important;
  height:clamp(410px,37vw,565px)!important;
  min-height:410px!important;
  aspect-ratio:auto!important;
  padding:0!important;
  align-self:center!important;
  background:#252628!important;
}
body:not(.gd40-home) .gd-about-page .gd-about-hero-image{
  position:relative!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  aspect-ratio:auto!important;
  background:#252628!important;
}
body:not(.gd40-home) .gd-about-page .gd-about-hero-image > img{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:57% 50%!important;
}
@media(max-width:900px){
 body:not(.gd40-home) .gd-about-page .gd-about-hero-grid{grid-template-columns:1fr!important}
 body:not(.gd40-home) .gd-about-page .gd-about-hero-visual{height:clamp(260px,58vw,420px)!important;min-height:260px!important}
}

/* Phones: keep photo directly above the same unmodified hero wording. */
@media(max-width:600px){
 body.gd40-home .gd40-hero{min-height:580px!important}
 body.gd40-home .gd40-hero-photo{height:227px!important}
 body.gd40-home .gd40-hero-content{min-height:580px!important;justify-content:flex-start!important;padding-top:245px!important;padding-bottom:28px!important}
}

/* Every service detail page: legacy light checklist had invisible ivory-on-ivory text. */
body:not(.gd40-home) .detail-content .detail-step,
body:not(.gd40-home) .detail-steps .detail-step{
 background:#292a2d!important;
 color:#f6f1ec!important;
 border:1px solid #454449!important;
 box-shadow:none!important;
}
body:not(.gd40-home) .detail-steps .detail-step h3,
body:not(.gd40-home) .detail-steps .detail-step p{color:#f2eeea!important}
body:not(.gd40-home) .detail-steps .detail-step-check{
 color:#dfc6aa!important;
 background:#373330!important;
 border-color:#756550!important;
}
body:not(.gd40-home) .crumb-link{color:#e0c8b0!important;text-decoration:none!important}
body:not(.gd40-home) .gd-about-page .gd-about-hero h1 span,
body:not(.gd40-home) .gd-about-page .gd-about-manifesto h2 span,
body:not(.gd40-home) .gd-about-page .gd-about-directions h2 span{color:#d9c5b2!important}
