/* DAVYSON v16: Search-friendly landing pages; main v15 site styling unchanged. */
.seo-page{background:#F3E3C9;color:#00093E}
.seo-site-header{position:sticky;top:0;z-index:40;background:#F3E3C9}
.seo-menu{display:flex;align-items:center;gap:clamp(13px,2vw,34px)}
.seo-menu a{color:#00093E;text-decoration:none;font-size:14px;font-weight:700;white-space:nowrap}
.seo-menu a:hover,.seo-menu a[aria-current="page"]{color:#A66851}
.seo-mobile-nav{display:none;position:relative}
.seo-mobile-nav summary{list-style:none;cursor:pointer;font-size:13px;font-weight:800;padding:11px;border:1px solid #A66851}
.seo-mobile-nav summary::-webkit-details-marker{display:none}
.seo-mobile-nav>div{position:absolute;right:0;top:100%;width:205px;background:#F3E3C9;box-shadow:0 14px 30px rgba(0,9,62,.18);display:flex;flex-direction:column;border:1px solid #A66851;padding:8px;z-index:80}
.seo-mobile-nav>div a{color:#00093E;font-weight:700;padding:11px 9px;text-decoration:none;font-size:14px}
.seo-mobile-nav>div a:hover{background:#A66851}
.seo-hero{background:#F3E3C9;padding:35px 0 70px}
.seo-breadcrumb{font-size:12px;display:flex;gap:10px;flex-wrap:wrap;color:#4A5477;margin-bottom:55px}
.seo-breadcrumb a{color:#4A5477;text-decoration:underline;text-underline-offset:4px}
.seo-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(28px,5vw,80px);align-items:center}
.seo-kicker{display:block;color:#A66851;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:15px}
.seo-page h1,.seo-page h2,.seo-page h3{font-family:inherit;letter-spacing:-.045em}
.seo-page h1{font-size:clamp(39px,5vw,76px);line-height:1.05;margin:0 0 30px;font-weight:800;max-width:800px}
.seo-page h2{font-size:clamp(30px,3vw,48px);line-height:1.1;margin:0 0 22px}
.seo-page h3{font-size:21px;margin:10px 0 13px}
.seo-page p{font-size:17px;line-height:1.7;margin:0 0 20px;max-width:820px}
.seo-page .seo-lead{font-size:clamp(20px,2vw,27px);line-height:1.4;font-weight:700;color:#3E3029;max-width:700px}
.seo-hero-photo{min-height:400px;background:#4A5477;overflow:hidden;box-shadow:18px 18px 0 rgba(0,9,62,.1)}
.seo-hero-photo img{display:block;width:100%;height:100%;max-height:670px;min-height:400px;object-fit:cover}
.seo-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}
.seo-button{display:inline-flex;align-items:center;justify-content:center;background:#A66851;color:#00093E;text-align:center;padding:18px 26px;min-height:56px;text-decoration:none;font-weight:800;letter-spacing:.01em}
.seo-button:hover{background:#3E3029;color:#F3E3C9}
.seo-link{color:inherit;text-decoration:none;border-bottom:1px solid #A66851;padding-bottom:5px;font-size:15px;font-weight:800}
.seo-link:hover{color:#A66851}
.seo-section{padding:78px 0;background:#F3E3C9}
.seo-section-soft{background:rgba(166,104,81,.12)}
.seo-split{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}
.seo-three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
.seo-three article{background:#F3E3C9;padding:28px;min-height:230px;border:1px solid rgba(0,9,62,.16)}
.seo-three article>span{color:#A66851;font-weight:800}
.seo-three article p{font-size:15px}
.seo-checks{list-style:none;margin:0;padding:0}
.seo-checks li{padding:17px 15px 17px 32px;border-bottom:1px solid rgba(0,9,62,.2);position:relative;font-weight:700;font-size:17px}
.seo-checks li:before{content:'✓';position:absolute;left:3px;color:#A66851}
.seo-note{margin-top:30px;border-left:3px solid #A66851;padding:18px 25px;background:rgba(243,227,201,.65)}
.seo-note strong{font-size:18px}.seo-note p{margin:8px 0 0}
.seo-section-head{display:flex;justify-content:space-between;align-items:end;gap:22px;margin-bottom:30px}
.seo-project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.seo-project-card{display:flex;flex-direction:column;background:#00093E;color:#F3E3C9;text-decoration:none;min-width:0;transition:transform .2s}
.seo-project-card:hover{transform:translateY(-3px)}
.seo-project-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.seo-project-info{display:flex;flex-direction:column;gap:9px;padding:23px;flex:1}
.seo-project-info .seo-kicker{margin:0;color:#A66851}
.seo-project-info strong{font-size:22px;line-height:1.15}
.seo-project-info>span:not(.seo-kicker){font-size:14px;color:#F3E3C9;line-height:1.6}
.seo-project-info b{font-size:13px;margin-top:auto;padding-top:15px}
.seo-faq{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}
.seo-faq details{border-bottom:1px solid rgba(0,9,62,.2);padding:18px 0}
.seo-faq summary{font-size:18px;font-weight:700;cursor:pointer}
.seo-faq details p{margin:16px 0 0}
.seo-chip-links{display:flex;gap:12px;flex-wrap:wrap}
.seo-chip-links a{border:1px solid rgba(0,9,62,.25);padding:12px 17px;text-decoration:none;color:#00093E;font-size:14px;font-weight:700}
.seo-chip-links a:hover{background:#00093E;color:#F3E3C9}
.seo-bottom-cta{padding:85px 0;background:#00093E;color:#F3E3C9}
.seo-bottom-cta .container{display:grid;grid-template-columns:1.25fr .75fr;gap:30px;align-items:center}
.seo-bottom-cta h2{max-width:690px}.seo-bottom-cta p{max-width:680px}
.seo-bottom-cta .seo-actions{justify-content:flex-end}
.seo-footer{background:#3E3029;color:#F3E3C9}
.seo-project-hero{padding-bottom:30px}
.seo-project-hero h1{max-width:1100px}
.seo-project-hero .seo-lead{max-width:1000px}
.seo-compare{--split:50%;position:relative;overflow:hidden;background:#00093E;height:clamp(340px,60vw,720px);touch-action:pan-y;isolation:isolate}
.seo-compare>img,.seo-compare-before-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.seo-compare-before-wrap{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--split)) 0 0);z-index:2}
.seo-compare-before-wrap img{max-width:none}
.seo-compare-label{position:absolute;top:15px;z-index:5;background:#00093E;color:#F3E3C9;padding:8px 13px;font-size:12px;font-weight:800}
.seo-label-before{left:15px}.seo-label-after{right:15px}
.seo-divider{position:absolute;top:0;bottom:0;left:var(--split);width:2px;background:#F3E3C9;z-index:4;pointer-events:none}
.seo-divider>span{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:#00093E;border:2px solid #F3E3C9;border-radius:50%;height:54px;width:54px;display:grid;place-items:center;color:#F3E3C9}
.seo-compare input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:6;margin:0}
.seo-compare:focus-within{outline:3px solid #A66851;outline-offset:3px}
.seo-caption{color:#4A5477;margin:12px 0 0!important;font-size:13px!important}
.seo-finished{margin:0;background:#00093E;text-align:center;padding:20px;color:#F3E3C9}
.seo-finished img{max-width:100%;max-height:800px;object-fit:contain}
.seo-finished figcaption{font-size:13px;margin-top:12px}
.seo-copy{max-width:940px}.seo-context{max-width:950px;margin-bottom:30px!important}
.seo-discovery{background:#00093E;color:#F3E3C9;padding:45px 0 60px}
.seo-discovery h2{font-size:clamp(26px,3vw,40px);margin:0 0 14px}
.seo-discovery p{max-width:900px}
.seo-discovery .seo-chip-links a{border-color:#4A5477;color:#F3E3C9}
.seo-discovery .seo-chip-links a:hover{background:#F3E3C9;color:#00093E}
@media(max-width:1050px){.seo-menu{gap:12px}.seo-menu a{font-size:12px}.seo-project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.seo-menu{display:none}.seo-mobile-nav{display:block}.seo-site-header .nav{gap:10px}.seo-site-header .nav-cta{font-size:12px;padding:11px 12px}.seo-hero-grid,.seo-split,.seo-faq,.seo-bottom-cta .container{grid-template-columns:1fr}.seo-hero{padding:25px 0 45px}.seo-breadcrumb{margin-bottom:24px}.seo-hero-photo{min-height:270px}.seo-hero-photo img{min-height:270px;max-height:420px}.seo-section{padding:50px 0}.seo-three{grid-template-columns:1fr}.seo-section-head{align-items:start;flex-direction:column}.seo-bottom-cta .seo-actions{justify-content:flex-start}.seo-project-grid{grid-template-columns:1fr}.seo-compare{height:clamp(330px,75vw,560px)}.seo-page h1{font-size:clamp(38px,8vw,56px)}}
@media(prefers-reduced-motion:reduce){.seo-project-card{transition:none}}

/* v18: Native HTML disclosure. Project headings, links and images remain in
   initial HTML (not injected on click), preserving crawler accessibility. */
.seo-featured-disclosure{margin-top:24px}
.seo-featured-disclosure>summary{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:58px;min-width:310px;padding:15px 22px;background:#A66851;color:#00093E;font-size:16px;line-height:1.3;font-weight:800;cursor:pointer;list-style:none;user-select:none;transition:background .2s,color .2s}
.seo-featured-disclosure>summary::-webkit-details-marker{display:none}
.seo-featured-disclosure>summary::marker{content:""}
.seo-featured-disclosure>summary::after{content:"+";font-size:25px;font-weight:600;line-height:1}
.seo-featured-disclosure[open]>summary::after{content:"−"}
.seo-featured-disclosure>summary:hover{background:#F3E3C9}
.seo-featured-disclosure>summary:focus-visible{outline:3px solid #F3E3C9;outline-offset:4px}
.seo-featured-disclosure .seo-toggle-expanded{display:none}
.seo-featured-disclosure[open] .seo-toggle-expanded{display:inline}
.seo-featured-disclosure[open] .seo-toggle-collapsed{display:none}
.seo-featured-disclosure .seo-project-grid{margin-top:24px}
@media(max-width:550px){.seo-featured-disclosure>summary{display:flex;width:100%;min-width:0}}
@media(prefers-reduced-motion:reduce){.seo-featured-disclosure>summary{transition:none}}
