/* Owner-approved direction: brighter sky, forest green remains an accent. */
.home-light .top{background:rgba(250,250,245,.96);padding:20px var(--pad);border-bottom:1px solid #d9e0dc}
.home-light .top nav a,.home-light .burger{color:#173d32}
.home-light .burger{border-color:#173d32}
.hero-light{background:#eaf0f1;min-height:820px;align-items:center}
.hero-light .photo{background-image:url(assets/concepts-20261012/hero-sky-compact-v2.png);background-position:65% center;inset:0;transition:none;will-change:auto}
.hero-light .photo::after{background:linear-gradient(90deg,rgba(248,249,244,.98) 0%,rgba(248,249,244,.94) 31%,rgba(248,249,244,.6) 47%,rgba(248,249,244,0) 68%);animation:none;transform:none}
.hero-light .copy{padding-top:156px;padding-bottom:92px;max-width:57%;color:#173d32}
.hero-light .kicker{color:#566858;font-size:12px;letter-spacing:.13em}
.hero-light h1{font-size:clamp(42px,4.6vw,72px);line-height:1.04;letter-spacing:-.035em;margin-bottom:25px}
.hero-light .result{color:#324d42;font-size:20px;max-width:510px;line-height:1.55}
.hero-light .cta{gap:12px;margin:26px 0 16px}
.hero-light .cta .btn{font-size:16px;padding:17px 22px}
.hero-light .hero-micro{font-size:13px;color:#53675d;margin-bottom:32px}
.hero-light .ease{max-width:470px;gap:13px}
.hero-light .ease li{font-size:15px;line-height:1.45}
.hero-more{display:inline-block;font-size:14px;text-underline-offset:5px;margin-top:8px}
.hero-mobile-image{display:none}
.visualization-label{position:absolute;right:24px;bottom:22px;z-index:5;font-size:11px;background:rgba(249,249,243,.93);padding:9px 12px;border-radius:3px;color:#334c40;max-width:90%}
.price-entry{background:#fafaf5;border-bottom:1px solid #dce1d8;scroll-margin-top:100px}
.price-entry .card{display:flex;flex-direction:column;border:1px solid #dbe1d6;background:#fff;box-shadow:0 12px 35px #173d3206}
.price-entry .card p{flex:1}.price-entry .btn{align-self:flex-start;font-size:15px}.price-note{margin:24px 0 0}
.screw-visual figure{margin:0}.screw-visual img{display:block;width:100%;height:420px;object-fit:cover;border-radius:4px}
.screw-visual figcaption{font-size:12px;color:#627067;padding-top:12px}.screw-visual .grid{align-items:center;gap:60px}
@media(max-width:800px){
 .home-light .top{padding:14px 20px}.home-light .top nav{background:#fafaf5}.home-light .top nav a{color:#173d32}
 .hero-light{display:flex;min-height:0;padding:0;flex-direction:column;align-items:stretch;overflow:hidden}
 .hero-light .copy{max-width:100%;padding:115px 24px 32px;order:0;background:#f6f8f3}
 .hero-light .photo{display:none}
 .hero-light .photo::after{display:none}
 .hero-light h1{font-size:43px}.hero-light .result{font-size:18px}
 .hero-mobile-image{display:block;position:relative;margin:0 -24px 25px;width:calc(100% + 48px)}
 .hero-mobile-image img{display:block;width:100%;height:200px;object-fit:cover;object-position:70% center}
 .hero-mobile-image figcaption{position:absolute;bottom:8px;right:8px;background:#fafaf0e8;padding:5px 7px;font-size:8px;color:#173d32}
 .hero-light .cta{flex-direction:column;align-items:stretch}.hero-light .cta .btn{justify-content:center}
 .hero-light .hero-micro{font-size:12px}.hero-light .ease li{font-size:14px}
 .visualization-label{display:none}
 .screw-visual .grid{gap:28px}.screw-visual img{height:250px}
}
@media(prefers-reduced-motion:reduce){.hero-light .photo{transform:none!important}}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:32px 0}
.team-card{margin:0;padding:28px 20px;background:#fafaf5;border:1px solid #dce1d8;border-radius:6px;text-align:center}
.team-card img{display:block;width:180px;height:180px;max-width:100%;margin:0 auto 20px;border-radius:50%;object-fit:cover;object-position:center 35%;border:2px solid #e3a72f}
.team-card figcaption strong{display:block;font-size:20px;line-height:1.4;color:#173d32;font-weight:600}
.team-card figcaption span{display:block;font-size:15px;line-height:1.5;color:#627067;margin-top:8px}
.team-card:first-child img{object-position:center top}
.hero-desktop-art{position:absolute;inset:0;z-index:3;pointer-events:none}
.foundation-art{position:absolute;left:57%;top:145px;width:190px;color:#173d32;transform:rotate(-5deg)}
.art-index{font-size:10px;letter-spacing:.16em;font-weight:600}
.foundation-art p{font:italic 32px/1.08 Georgia,serif;margin:12px 0 2px;letter-spacing:-.02em}
.foundation-art svg{display:block;width:170px;height:42px}
.photo-facts{position:absolute;right:30px;bottom:24px;display:flex;gap:24px;padding:18px 22px;background:#173d32e8;color:#fff;border-radius:4px}
.photo-facts span{font-size:12px;line-height:1.5;display:block}.photo-facts strong{display:block;font-size:16px;font-weight:600;margin-bottom:4px}
.photo-facts span+span{border-left:1px solid #ffffff55;padding-left:24px}
@media(max-width:800px){
 .hero-desktop-art{display:none}
 .hero-mobile-image{overflow:hidden}
 .hero-mobile-image img{height:290px;object-position:72% center}
 .hero-mobile-image .foundation-art{left:24px;top:16px;width:160px}
 .hero-mobile-image .foundation-art p{font-size:26px;margin-top:8px}
 .hero-mobile-image .foundation-art svg{width:135px;height:33px}
 .hero-mobile-image .art-index{font-size:8px}
 .hero-mobile-image .photo-facts{left:0;right:0;bottom:0;gap:14px;padding:13px 20px;border-radius:0;background:linear-gradient(0deg,#12291bf2,#12291bbe)}
 .hero-mobile-image .photo-facts strong{font-size:13px}
 .hero-mobile-image .photo-facts span{font-size:10px}
 .hero-mobile-image .photo-facts span+span{padding-left:14px}
}
@media(max-width:800px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.team-card{padding:18px 10px}.team-card img{width:125px;height:125px;margin-bottom:14px}.team-card figcaption strong{font-size:15px;overflow-wrap:anywhere}.team-card figcaption span{font-size:13px}}
@media(max-width:340px){.team-grid{grid-template-columns:1fr}}
.team-grid{gap:24px;padding:24px;background:linear-gradient(135deg,#fff9e4,#f0f5ec 60%,#e8eee7);border-radius:24px;border:1px solid #e8e5d5}
.team-card{position:relative;overflow:hidden;background:#fffef9;border:1px solid #e8e7dd;border-radius:18px;padding:30px 22px 26px;box-shadow:0 10px 24px #173d3209;border-top:5px solid #e3a72f}
.team-card:nth-child(even){border-top-color:#719078}
.team-card img{width:184px;height:184px;border:5px solid #fff;outline:1px solid #e3a72f;box-shadow:0 8px 20px #173d3218;margin-bottom:24px}
.team-card:nth-child(2) img{object-position:center 22%}
.team-card figcaption span{display:inline-block;background:#f4efdb;color:#514d34;border-radius:20px;padding:6px 12px;margin-top:12px;font-size:14px}
@media(max-width:800px){.team-grid{padding:12px;gap:12px;border-radius:18px}.team-card{padding:20px 10px;border-radius:13px}.team-card img{width:118px;height:118px;border-width:3px;margin-bottom:18px}.team-card figcaption span{font-size:12px;padding:5px 8px}.team-card figcaption strong{font-size:15px}}
.production-stamp{display:flex;width:240px;min-height:112px;flex-direction:column;align-items:center;justify-content:center;gap:9px;margin:28px 0 18px;padding:14px 20px;border:3px double #173d32;border-radius:12px;color:#173d32;background:#fff9eacb;text-decoration:none;transform:rotate(-5deg);box-shadow:inset 0 0 0 4px #fff9ea,0 3px 0 #173d3212;letter-spacing:.08em;text-align:center;transition:transform .2s,background .2s}
.production-stamp strong{font-size:18px;line-height:1.15;letter-spacing:.06em;font-weight:800}
.production-stamp .stamp-top,.production-stamp .stamp-bottom{font-size:10px;font-weight:700}
.production-stamp:hover{transform:rotate(-2deg);background:#ffedb2}
.production-stamp:focus-visible{outline:3px solid #e3a72f;outline-offset:5px}
@media(max-width:800px){.production-stamp{width:220px;margin:26px 0}}
@media(prefers-reduced-motion:reduce){.production-stamp{transition:none}}
.hero-desktop-art .production-stamp{position:absolute;right:6%;bottom:230px;margin:0;pointer-events:auto;background:#fff9eae8;z-index:6}
.hero-mobile-image .production-stamp{position:absolute;right:14px;bottom:80px;z-index:6;width:166px;min-height:88px;margin:0;padding:10px;transform:rotate(-7deg);background:#fff9eae8;pointer-events:auto}
.hero-mobile-image .production-stamp strong{font-size:13px}
.hero-mobile-image .production-stamp .stamp-top,.hero-mobile-image .production-stamp .stamp-bottom{font-size:7px}
.hero-light .guide-cta{background:#173d32;color:#fffef9;border:1px solid #173d32}
.guide-form{display:grid;gap:16px;margin-top:22px}.guide-form label{display:grid;gap:6px;font-size:15px}.guide-form input[type=tel],.guide-form input[type=email]{width:100%;padding:13px;border:1px solid #9ba79d;border-radius:6px;font:inherit}.guide-form .guide-consent{display:flex;align-items:flex-start;gap:10px;font-size:13px}.guide-form .guide-consent input{margin-top:3px;flex:0 0 auto}.guide-form [role=status]{font-size:14px;line-height:1.5}.guide-form input:focus-visible{outline:3px solid #e3a72f;outline-offset:2px}#guide-dialog{max-width:560px;width:calc(100% - 32px);padding:28px;border:1px solid #d4dace;border-radius:16px;background:#fffef9;color:#173d32}#guide-dialog::backdrop{background:#173d3280}.guide-close{float:right;border:0;background:none;font-size:26px;cursor:pointer;color:#173d32}

/* Mobile light adaptation 2026-10-13. Content and JS untouched. */
@media(max-width:800px){
 html{color-scheme:only light;-webkit-text-size-adjust:100%;text-size-adjust:100%}
 body{background:#f7f8f2;color:#173d32;font-size:16px}
 .top,.top.stuck,.home-light .top{background:#fffef9;color:#173d32;border-bottom:1px solid #d9e0d6;box-shadow:0 3px 18px #173d3208;padding:14px 20px}
 .top nav{background:#fffef9;border-bottom:1px solid #d9e0d6;margin:0;padding:16px 20px 24px}
 .top nav a,.home-light .top nav a,.burger,.home-light .burger{color:#173d32;border-color:#b5c1b6}
 .top .logo img{height:auto;width:168px;max-width:100%}
 .burger{width:44px;height:44px;background:#fffef9}
 .pagehead{background:#eef2e8;color:#173d32;padding:120px 0 48px;border-bottom:1px solid #d9e0d6}
 .pagehead h1,.pagehead p,.pagehead .eyebrow{color:#173d32}
 .pagehead h1{font-size:clamp(32px,9vw,43px);line-height:1.12}
 section.dark,.obj{background:#eaf0e4;color:#173d32}
 section.dark h2,section.dark h3,section.dark p,section.dark .lead,section.dark .note,section.dark .eyebrow,.obj h3,.obj p{color:#173d32}
 .door{background:#fffef9;color:#173d32;padding:0 22px 24px;border:1px solid #d9e0d6;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;min-height:0}
 .door>img{position:relative;inset:auto;width:calc(100% + 44px);max-width:none;margin:0 -22px 22px;height:200px;object-fit:cover;z-index:auto}
 .door::after{display:none}.door h3,.door p,.door .tagline{color:#173d32}.door .btn{align-self:flex-start}
 footer{background:#eef2e8;color:#173d32;border-top:1px solid #d1d9ca}
 footer p,footer a,footer small{color:#173d32}
 .hero-mobile-image .photo-facts{background:#fffef9ed;color:#173d32;border-top:1px solid #d9e0d6}
 .hero-mobile-image .photo-facts span+span{border-color:#cad4c4}
 .card{border-radius:12px;border:1px solid #e1e5db;box-shadow:0 8px 22px #173d3206}
 .btn{min-height:48px;white-space:normal;line-height:1.4;justify-content:center}
 .btn.dark,.hero-light .guide-cta{background:#e8eee0;color:#173d32;border:1px solid #a1b196}
 .hero-light h1{font-size:clamp(35px,10.6vw,43px)}
 .hero-light .copy{padding-top:110px}
 .table{display:block;max-width:100%;overflow-x:auto}.table th,.table td{font-size:14px;padding:12px}
 .grid>*,.cols>*,.calc>*,.team-grid>*{min-width:0}
 input,select,textarea{font-size:16px;color:#173d32;background:#fffef9;max-width:100%}
 dialog{max-height:calc(100dvh - 32px);overflow-y:auto;background:#fffef9;color:#173d32}
 :focus-visible{outline:3px solid #8a6a1c;outline-offset:3px}
}

@media(max-width:800px){.top .logo img,footer .logo img{filter:brightness(0) saturate(100%) invert(19%) sepia(19%) saturate(1041%) hue-rotate(106deg) brightness(93%) contrast(94%)}}

@media(max-width:800px){footer img[src*="logo"]{filter:brightness(0) saturate(100%) invert(19%) sepia(19%) saturate(1041%) hue-rotate(106deg) brightness(93%) contrast(94%)}footer h4{color:#6b591f}footer [style*="color"]{color:#4b6152!important}}

/* Photographic cards retain white copy on a dark readable scrim. */
@media(max-width:800px){.door{min-height:440px;padding:28px 24px;color:#fffef9;background:#173d32;justify-content:flex-end}.door::after{display:block;background:linear-gradient(180deg,#102c2455,#102c24dc 60%,#102c24f2)}.door h3,.door p,.door .tagline,.door li{color:#fffef9}.door li{border-color:#fffef9aa;background:#173d3260}.door .btn{color:#173d32}.door .btn.ghost{color:#fffef9;background:transparent}}




/* Engineering proof: stage, evidence, result. */
.engineering-proof{background:#f3f5eb}.engineering-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:34px 0}.engineering-stages article{padding:25px 20px;border-top:3px solid #b58b35;background:#fffef9}.engineering-stages span{font-size:11px;letter-spacing:.1em;color:#6d612f}.engineering-stages h3{margin:18px 0 14px}.engineering-stages p{font-size:16px}.engineering-docs{padding:30px;background:#e5ecd9;border:1px solid #bdcbb0}.engineering-docs h3{margin-bottom:14px}.engineering-docs p{max-width:950px}.engineering-proof .note{margin-top:22px}
@media(max-width:800px){.engineering-stages{grid-template-columns:1fr;gap:16px}.engineering-docs{padding:24px 20px}.engineering-proof h2{font-size:32px;line-height:1.15}}
.engineering-map-legend{display:none}.engineering-proof{scroll-margin-top:120px}.engineering-map{margin:32px 0;padding:20px 24px;background:#fffef9;border:1px solid #d2dac9}.engineering-map svg{display:block;width:100%;max-width:1000px;margin:auto}.engineering-map figcaption{font-size:13px;color:#53665b;margin-top:8px;line-height:1.5}@media(max-width:800px){.engineering-map{padding:16px 10px}.engineering-map svg{min-height:170px}.engineering-map text{display:none}.engineering-map svg{view-transition-name:none}.engineering-map-legend{display:flex;flex-wrap:wrap;gap:8px 14px;font-size:14px;color:#173d32}}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:800px){.engineering-map{overflow:hidden}.engineering-map svg{width:155%;max-width:none}}
