:root{--ink:#171b19;--muted:#656c68;--line:#dfe3df;--soft:#f2f4f0;--accent:#63806d;--paper:#fff;--max:1440px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Noto Sans KR",Arial,sans-serif;line-height:1.6}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}.site-header{height:80px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 clamp(24px,4vw,72px);border-bottom:1px solid rgba(223,227,223,.75);position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:12px;font-weight:700;letter-spacing:.06em}.brand-mark{width:22px;height:22px;border:5px solid var(--accent);border-top-color:transparent;transform:rotate(45deg)}.main-nav{display:flex;gap:34px;font-size:14px}.main-nav a{position:relative}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--ink);transition:.25s}.main-nav a:hover:after{right:0}.header-cta{justify-self:end;border:1px solid var(--ink);padding:9px 18px;font-size:13px;transition:.2s}.header-cta:hover{background:var(--ink);color:white}.hero{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:46% 54%;min-height:750px;padding:0 clamp(24px,4vw,72px)}.hero-copy{padding:100px clamp(30px,6vw,100px) 58px 0;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--accent);margin:0 0 24px}.hero h1{font-size:clamp(50px,6vw,86px);line-height:1.08;letter-spacing:-.055em;margin:0 0 36px}.hero-text{max-width:540px;font-size:17px;color:var(--muted);margin:0 0 38px}.hero-actions{display:flex;gap:10px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border:1px solid var(--ink);font:inherit;font-size:14px;cursor:pointer}.btn-dark{background:var(--ink);color:white}.btn-line{background:white}.hero-meta{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);margin:82px 0 0;padding-top:24px}.hero-meta div{display:grid;gap:4px}.hero-meta dt{font-size:11px;color:var(--accent)}.hero-meta dd{margin:0;font-size:13px}.hero-visual{position:relative;min-height:720px;overflow:hidden}.hero-visual img{object-position:56% center}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,25,21,.04),transparent 35%)}.visual-caption{position:absolute;right:22px;bottom:10px;color:white;font-size:10px;letter-spacing:.15em;z-index:2}.section-pad{padding:120px max(24px,calc((100vw - var(--max))/2 + 72px))}.intro{background:var(--soft)}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;align-items:end}.intro h2,.section-heading h2,.space-copy h2,.process h2,.quote h2{font-size:clamp(34px,4vw,58px);line-height:1.2;letter-spacing:-.045em;margin:0}.intro-grid>p,.section-heading>p{color:var(--muted);font-size:17px;max-width:530px;margin:0}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:50px}.services{background:white}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:500px;overflow:hidden;background:#222}.service-card-wide{grid-column:span 2}.service-card img{transition:transform .6s;filter:saturate(.74)}.service-card:hover img{transform:scale(1.035)}.service-card:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.76))}.card-copy{position:absolute;left:28px;right:28px;bottom:26px;z-index:2;color:white}.card-copy span{font-size:11px;letter-spacing:.15em;opacity:.7}.card-copy h3{font-size:24px;line-height:1.3;margin:8px 0}.card-copy p{margin:0;color:rgba(255,255,255,.75);font-size:14px}.spaces{display:grid;grid-template-columns:1.04fr .96fr;background:var(--soft);padding-left:0;padding-right:0}.space-visual{height:700px}.space-visual img{object-position:center 35%}.space-copy{padding:80px clamp(24px,8vw,130px);align-self:center}.space-copy h2{margin-bottom:60px}.space-list{border-top:1px solid #cdd2cd}.space-list div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid #cdd2cd}.space-list b{font-size:11px;letter-spacing:.12em;color:var(--accent)}.space-list span{font-size:15px}.performance-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.performance-grid article{min-height:260px;padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.performance-grid span{font-size:11px;color:var(--accent)}.performance-grid h3{font-size:27px;margin:66px 0 12px}.performance-grid p{font-size:14px;color:var(--muted);margin:0}.note{font-size:12px;color:#7c837f;margin-top:18px}.process{background:#1c2420;color:white}.process .eyebrow{color:#9ab0a2}.process h2{margin-bottom:70px}.process-list{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.23);border-left:1px solid rgba(255,255,255,.23)}.process-list li{min-height:280px;padding:28px;border-right:1px solid rgba(255,255,255,.23);border-bottom:1px solid rgba(255,255,255,.23);display:flex;flex-direction:column;justify-content:space-between}.process-list>li>span{font-size:12px;color:#9ab0a2}.process-list h3{font-size:20px;margin:0 0 12px}.process-list p{font-size:14px;color:rgba(255,255,255,.6);margin:0}.gallery{background:#242a27}.section-heading.light h2,.section-heading.light>p{color:white}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:8px}.gallery-grid figure{margin:0;position:relative;overflow:hidden}.gallery-grid figure:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.55))}.gallery-grid img{filter:saturate(.65);transition:.5s}.gallery-grid figure:hover img{filter:saturate(.9);transform:scale(1.025)}.gallery-grid figcaption{position:absolute;left:18px;bottom:14px;color:white;font-size:10px;letter-spacing:.14em;z-index:2}.g-tall{grid-row:span 2}.g-wide{grid-column:span 2}.quote{display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;background:var(--soft)}.quote-intro>p:not(.eyebrow){color:var(--muted);max-width:480px}.quote-intro ul{padding:0;margin:38px 0;list-style:none;border-top:1px solid #cdd2cd}.quote-intro li{padding:13px 0;border-bottom:1px solid #cdd2cd;font-size:14px}.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.quote-form label{display:grid;gap:8px;font-size:13px}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:0;border-bottom:1px solid #aeb5af;background:transparent;padding:12px 2px;font:inherit;border-radius:0}.quote-form textarea{border:1px solid #aeb5af;padding:14px;resize:vertical}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{outline:2px solid rgba(99,128,109,.25);outline-offset:2px}.full{grid-column:1/-1}.form-help{font-size:11px;color:#7b817d;margin:0}dialog{border:0;padding:38px;max-width:580px;width:calc(100% - 40px);box-shadow:0 24px 80px rgba(0,0,0,.24)}dialog::backdrop{background:rgba(11,15,13,.65)}dialog h3{font-size:28px;margin:0 0 22px}dialog pre{white-space:pre-wrap;background:var(--soft);padding:20px;font:14px/1.8 "Noto Sans KR",sans-serif}.dialog-close{position:absolute;right:18px;top:12px;border:0;background:none;font-size:30px;cursor:pointer}footer{padding:55px clamp(24px,4vw,72px);display:grid;grid-template-columns:1fr auto;gap:12px;border-top:1px solid var(--line);align-items:center}footer p{margin:0;font-size:13px;color:var(--muted)}.footer-note{grid-column:2;font-size:11px}
@media(max-width:960px){.site-header{grid-template-columns:1fr auto}.main-nav{display:none}.hero{grid-template-columns:1fr;padding-right:0}.hero-copy{padding:72px 24px}.hero-visual{min-height:540px}.section-pad{padding:85px 24px}.intro-grid,.spaces,.quote{grid-template-columns:1fr}.intro-grid{gap:28px}.service-grid{grid-template-columns:1fr 1fr}.service-card-wide{grid-column:span 2}.space-visual{height:500px}.space-copy{padding:72px 24px}.performance-grid,.process-list{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.quote{gap:60px}footer{grid-template-columns:1fr}.footer-note{grid-column:1}}
@media(max-width:620px){.site-header{height:68px;padding:0 18px}.brand{font-size:14px}.header-cta{padding:7px 12px}.hero-copy{padding:65px 20px 48px}.hero h1{font-size:48px}.hero-actions{flex-direction:column}.hero-meta{margin-top:52px}.hero-meta dd{font-size:11px}.hero-visual{min-height:460px}.section-pad{padding:72px 20px}.section-heading{display:block}.section-heading>p{margin-top:22px}.service-grid{display:block}.service-card{min-height:420px;margin-bottom:10px}.performance-grid,.process-list{grid-template-columns:1fr}.performance-grid article,.process-list li{min-height:210px}.gallery-grid{grid-template-columns:1fr;grid-auto-rows:330px}.g-tall,.g-wide{grid-row:auto;grid-column:auto}.quote-form{grid-template-columns:1fr}.full{grid-column:1}.space-visual{height:420px}.space-list div{grid-template-columns:100px 1fr}footer{padding:42px 20px}}

/* Refined field-photo presentation */
:root{--accent:#527666}.hero-break{display:none}.hero-visual img{object-position:center 46%;filter:saturate(.78) contrast(1.02)}.space-visual img{filter:saturate(.82)}.gallery-note{margin:18px 0 0;color:rgba(255,255,255,.5);font-size:11px}.quote-form .btn{margin-top:4px}.photo-field{border:1px dashed #aeb5af;padding:16px}.photo-field span{font-size:11px;color:#7b817d}.photo-field input{border:0;padding:5px 0}
@media(min-width:621px) and (max-width:1320px){.hero-break{display:block}}

/* Green Housing identity */
:root{--ink:#171a18;--muted:#666d69;--line:#dfe4df;--soft:#f1f4f0;--accent:#285b43;--accent-bright:#7dad45}
body{font-family:"Pretendard Variable","Pretendard","Helvetica Neue",Helvetica,Arial,sans-serif}
.site-header{height:84px;background:rgba(255,255,255,.94)}
.brand{gap:12px;letter-spacing:-.02em}
.brand-mark{position:relative;width:28px;height:28px;border:2px solid var(--accent);border-radius:50%;border-top-color:var(--accent);transform:none;overflow:hidden}
.brand-mark:before,.brand-mark i{content:"";position:absolute;background:var(--accent)}
.brand-mark:before{width:15px;height:2px;left:6px;top:13px;transform:rotate(-45deg)}
.brand-mark i{width:9px;height:9px;right:4px;top:4px;border-radius:50%;background:var(--accent-bright)}
.brand-name{display:grid;line-height:1}
.brand-name b{font-size:18px;letter-spacing:-.05em}
.brand-name small{margin-top:5px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:8px;font-weight:600;letter-spacing:.18em;color:var(--muted)}
.eyebrow,.visual-caption,.space-list b,.gallery-grid figcaption{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}
.hero h1{font-weight:600}
.hero{grid-template-columns:40% 60%;min-height:790px}
.hero-copy{padding-right:clamp(28px,4vw,72px)}
.hero-visual{min-height:790px}
.hero-visual img{object-position:center center;filter:saturate(.82) contrast(1.01)}
.admin-link{margin-left:12px;color:#8d948f;text-decoration:underline;text-underline-offset:3px}

/* Typography and green palette shared with the business-card shop */
@font-face{font-family:"Pretendard Variable";src:url("assets/fonts/PretendardVariable.woff2") format("woff2");font-weight:45 920;font-style:normal;font-display:swap}
@font-face{font-family:"Barun Helvetica";src:url("assets/fonts/Helvetica.ttf") format("truetype");font-weight:400 600;font-style:normal;font-display:swap}
@font-face{font-family:"Barun Helvetica";src:url("assets/fonts/Helvetica-Bold.ttf") format("truetype");font-weight:700 900;font-style:normal;font-display:swap}
:root{--accent:#74B04D;--accent-deep:#477627;--accent-bright:#8BC95F;--soft:#F0F5EC;--ink:#202326;--muted:#5c6461;--line:#DEE5DA}
body{font-family:"Pretendard Variable","Pretendard",sans-serif;font-weight:400;letter-spacing:-.015em;-webkit-font-smoothing:antialiased}
.brand-name b{font-size:20px;font-weight:780;letter-spacing:-.055em;color:#202326}
.brand-name small,.eyebrow,.visual-caption,.space-list b,.gallery-grid figcaption{font-family:"Barun Helvetica","Helvetica Neue",Helvetica,Arial,sans-serif}
.brand-name small{color:#74B04D;font-weight:700}
.brand-mark{border-color:#477627}.brand-mark:before{background:#477627}.brand-mark i{background:#74B04D}
.eyebrow{color:#5d9638;font-size:12px;font-weight:700;letter-spacing:.13em}
.hero h1{font-family:"Pretendard Variable","Pretendard",sans-serif;font-size:clamp(48px,5.1vw,72px);font-weight:760;letter-spacing:-.065em;line-height:1.12;color:#202326}
.hero h1 em{font-style:normal;color:#65A13E}
.intro h2,.section-heading h2,.space-copy h2,.process h2,.quote h2{font-family:"Pretendard Variable","Pretendard",sans-serif;font-size:clamp(34px,3.45vw,50px);font-weight:720;letter-spacing:-.06em;line-height:1.18}
.section-heading h2:after{content:"";display:block;width:42px;height:3px;margin-top:17px;background:#74B04D}
.card-copy h3{font-weight:720;letter-spacing:-.04em}
.performance-grid span,.process-list>li>span{color:#74B04D;font-family:"Barun Helvetica",Helvetica,Arial,sans-serif;font-weight:700}
.space-list b{color:#5d9638;font-weight:700}
.header-cta{border-color:#477627;background:#477627;color:#fff;font-weight:700}
.header-cta:hover{background:#74B04D;border-color:#74B04D}
.btn-dark{border-color:#477627;background:linear-gradient(135deg,#74B04D,#477627);font-weight:700}
.btn-line{border-color:#9ec58a;color:#477627;font-weight:700}
.btn-line:hover{background:#F0F5EC}
.process{background:#202820}.process .eyebrow{color:#91C46F}
@media(max-width:620px){.hero h1{font-size:45px}.brand-name b{font-size:17px}.intro h2,.section-heading h2,.space-copy h2,.process h2,.quote h2{font-size:34px}}

/* Larger, lighter navigation and stronger green rhythm */
.site-header{height:102px;padding-inline:clamp(28px,4.5vw,82px);border-bottom:2px solid #D7E9CC}
.brand{gap:15px}
.brand-mark{width:38px;height:38px;border-width:3px}
.brand-mark:before{width:20px;left:8px;top:17px}
.brand-mark i{width:12px;height:12px;right:5px;top:5px}
.brand-name b{font-size:29px;font-weight:760;letter-spacing:-.06em}
.brand-name small{margin-top:7px;font-size:10px;letter-spacing:.21em}
.main-nav{gap:48px}
.main-nav a{font-family:"Pretendard Variable","Pretendard",sans-serif;font-size:22px;font-weight:280;letter-spacing:-.045em;color:#363B37;padding:33px 0}
.main-nav a:after{bottom:25px;height:2px;background:#74B04D}
.main-nav a:hover{color:#477627}
.header-cta{padding:12px 23px;font-size:15px;font-weight:600}
.hero{background:linear-gradient(110deg,#F5F9F2 0,#fff 40%)}
.hero-copy{padding-top:110px}
.hero h1{font-size:clamp(56px,5.6vw,82px);margin-bottom:40px}
.hero-text{font-size:19px;line-height:1.85;color:#59615C}
.hero-actions .btn{min-height:58px;padding-inline:30px;font-size:16px}
.hero-meta dd{font-size:15px;font-weight:500}.hero-meta dt{font-size:13px;font-weight:700;color:#65A13E}
.eyebrow{font-size:13px;margin-bottom:26px}
.intro{background:linear-gradient(135deg,#EAF3E5 0%,#F7FAF5 72%);border-top:1px solid #D5E7CA;border-bottom:1px solid #D5E7CA}
.intro h2,.section-heading h2,.space-copy h2,.process h2,.quote h2{font-size:clamp(40px,3.85vw,56px);font-weight:720}
.intro h2 em,.space-copy h2 em,.quote h2 em{font-style:normal;color:#65A13E}
.space-copy h2 em{display:inline-block;font-size:.88em;white-space:nowrap}
.process h2 em{font-style:normal;color:#9ED47A}
.intro-grid>p,.section-heading>p{font-size:18px;line-height:1.85}
.section-heading{margin-bottom:62px}
.section-heading h2:after{width:58px;height:4px;margin-top:20px}
.service-card{min-height:530px}
.card-copy h3{font-size:27px}.card-copy p{font-size:15px;line-height:1.7}
.spaces{background:#F0F5EC}.space-list span{font-size:17px}.space-list b{font-size:12px}
.performance{background:linear-gradient(180deg,#fff,#F7FAF5)}
.performance-grid article{min-height:280px}.performance-grid article:nth-child(2n){background:#F2F8EE}
.performance-grid h3{font-size:31px}.performance-grid p{font-size:15px;line-height:1.75}
.process{background:linear-gradient(135deg,#1D2B21,#263D2C)}
.process-list h3{font-size:23px}.process-list p{font-size:15px;line-height:1.7}
.gallery{background:#202923}
.quote{background:linear-gradient(135deg,#EFF6EB,#F9FBF8)}
footer{background:#F0F5EC;border-top:3px solid #74B04D}
@media(max-width:1250px){.site-header{height:94px}.main-nav{gap:30px}.main-nav a{font-size:18px}.brand-name b{font-size:24px}}
@media(max-width:960px){.main-nav{display:none}.site-header{grid-template-columns:1fr auto}}
@media(max-width:620px){.site-header{height:76px}.brand-mark{width:31px;height:31px}.brand-mark:before{left:6px;top:14px}.brand-mark i{width:10px;height:10px}.brand-name b{font-size:21px}.brand-name small{font-size:8px}.hero h1{font-size:49px}.hero-text{font-size:17px}.intro h2,.section-heading h2,.space-copy h2,.process h2,.quote h2{font-size:38px}}
@media(max-width:620px){.space-copy h2 em{font-size:29px;letter-spacing:-.065em}}

.eyebrow{font-size:16px;font-weight:300;letter-spacing:.16em;line-height:1.3;color:#477627}
.hero-eyebrow{display:grid;gap:2px;margin-bottom:30px;font-size:22px;font-weight:300;letter-spacing:.13em}
.hero-eyebrow span:last-child{color:#74B04D}
.brand-name small{font-size:12px;font-weight:400;letter-spacing:.18em}
.visual-caption{font-size:13px;font-weight:300;letter-spacing:.18em}
@media(max-width:620px){.eyebrow{font-size:14px}.hero-eyebrow{font-size:18px}.brand-name small{font-size:9px}}

/* Readable English, numbers, captions and complete company footer */
.eyebrow{font-size:18px}.hero-eyebrow{font-size:25px}
.brand-name small{font-size:14px}
.visual-caption{font-size:15px}
.hero-meta dt{font-size:16px}.hero-meta dd{font-size:16px}
.card-copy span{font-size:15px}.card-copy p{font-size:16px}
.space-list b{font-size:15px}.space-list span{font-size:18px}
.performance-grid span{font-size:16px}.performance-grid p{font-size:16px}
.process-list>li>span{font-size:16px}.process-list p{font-size:16px}
.gallery-grid figcaption{font-size:14px}.gallery-note,.note{font-size:14px}
.quote-form label{font-size:15px}.photo-field span,.form-help{font-size:13px}
.site-footer{padding:0;background:#202820;color:#fff;border-top:5px solid #74B04D;display:grid;grid-template-columns:.82fr 1.18fr;gap:0}
.footer-lead{padding:58px clamp(28px,5vw,78px);background:#EAF3E5;color:#202326}
.footer-lead>p{margin:28px 0 38px;font-size:17px;line-height:1.8;color:#59615C}
.footer-contact{display:grid;gap:5px;padding-top:24px;border-top:1px solid #C7DDBA}
.footer-contact>span{font:400 15px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.14em;color:#5D9638}
.footer-contact>a{font:700 34px "Barun Helvetica",Helvetica,Arial,sans-serif;color:#477627}
.footer-contact>small{font-size:14px;color:#687169}
.footer-meta{margin:0;padding:58px clamp(28px,5vw,78px);display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:0 34px}
.footer-meta div{display:grid;grid-template-columns:145px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.16)}
.footer-meta .wide{grid-column:1/-1}
.footer-meta dt{font-size:15px;color:#9ED47A}.footer-meta dd{margin:0;font-size:16px;color:#F3F6F2}
.footer-bottom{grid-column:1/-1;padding:30px clamp(28px,5vw,78px) 38px;border-top:1px solid rgba(255,255,255,.15);position:relative}
.footer-bottom p{margin:0 0 18px;font-size:15px;color:#D4DDD5}
.footer-bottom small{display:block;font-size:13px;line-height:1.8;color:#AAB5AC}
.footer-bottom .admin-link{position:absolute;right:clamp(28px,5vw,78px);bottom:38px;color:#9ED47A;font-size:14px}
@media(max-width:980px){.site-footer{grid-template-columns:1fr}.footer-meta{padding-top:40px}.footer-bottom{grid-column:1}}
@media(max-width:620px){.eyebrow{font-size:16px}.hero-eyebrow{font-size:21px}.brand-name small{font-size:11px}.visual-caption{font-size:13px}.footer-lead,.footer-meta{padding:42px 22px}.footer-meta{grid-template-columns:1fr}.footer-meta .wide{grid-column:1}.footer-meta div{grid-template-columns:120px 1fr}.footer-bottom{padding:28px 22px 70px}.footer-bottom .admin-link{left:22px;right:auto;bottom:26px}}

/* Compact footer copied from the business-card shop layout */
footer.site-footer{display:block;padding:0;border-top:0;background:transparent;color:#39363e}
.footer-inner{width:min(100% - 48px,1440px);margin:0 auto}
.footer-bank{border-top:1px solid #babac1;border-bottom:1px solid #babac1;background:#d5d6da}
.footer-bank-inner{display:grid;grid-template-columns:minmax(620px,1.15fr) minmax(360px,.85fr);align-items:center;gap:34px;padding:24px 0}
.footer-bank-account{display:grid;grid-template-columns:72px 168px minmax(240px,1fr);align-items:center;column-gap:14px}
.footer-bank-label{font-size:17px;font-weight:850;letter-spacing:-.08em;color:#39363e}
.footer-bank-brand{padding-left:15px;border-left:3px solid #74B04D;font-size:20px;font-weight:800;letter-spacing:-.05em;color:#202326}
.footer-bank-brand{height:58px;overflow:hidden;position:relative}
.footer-bank-brand img{display:block;width:162px;height:auto;object-fit:contain;transform:translateY(1px)}
.footer-bank-detail{display:flex;flex-direction:column;gap:3px}
.footer-bank-detail b{font-size:17px;font-weight:650;color:#5e5a63}
.footer-bank-detail strong{font:650 28px "Barun Helvetica",Helvetica,Arial,sans-serif;color:#302e34;letter-spacing:.01em}
.footer-bank-inner>p{margin:0;padding-left:28px;border-left:1px solid #b8b8bf;font-size:13px;font-weight:400;line-height:1.6;letter-spacing:-.05em;color:#625f68}
.footer-bank-inner>p b{font-size:14px;color:#3f3934}.footer-bank-inner>p span{color:#57535c}
.footer-bank-inner>.footer-bank-cs{display:grid;grid-template-columns:auto 1fr;gap:2px 18px;align-items:end;padding-top:0;border-top:0}
.footer-bank-cs b{font-size:17px!important;font-weight:650}.footer-bank-cs strong{font:650 28px "Barun Helvetica",Helvetica,Arial,sans-serif;color:#365B22}.footer-bank-cs span{grid-column:1/-1;font-size:14px}
.ft-dark{padding:0 0 32px;background:#c6c7cc;color:#514e57}
.footer-links{display:flex;flex-wrap:wrap;gap:0;margin:0 0 18px;padding:19px 0 15px;border-bottom:1px solid #adaeb4}
.footer-links a{position:relative;padding:0 17px;font-size:13px;font-weight:400;color:#45424a}
.footer-links a:first-child{padding-left:0}.footer-links a+a:before{content:"";position:absolute;left:0;top:4px;width:1px;height:11px;background:#9d9da5}
.footer-company{position:relative;font-size:12.5px;line-height:1.7;color:#514e57}
.footer-meta{display:flex;flex-wrap:wrap;gap:0;padding:0;margin:0;background:none}
.footer-meta>div{display:flex;align-items:baseline;gap:0;margin:0 22px 0 0;padding:0;border:0}
.footer-meta dt{margin-right:7px;font-size:12px;font-weight:650;color:#73707a}.footer-meta dd{margin:0;font-size:12.5px;font-weight:500;color:#48454d}
.footer-notice{margin:13px 0 0;padding-top:12px;border-top:1px solid #adaeb4;font-size:12px;color:#625f68}
.footer-copy{display:block;margin-top:12px;font-size:11px;line-height:1.65;letter-spacing:.02em;color:#74717a}
.footer-company .admin-link{position:absolute;right:0;bottom:0;margin:0;font-size:12px;color:#514e57}
@media(max-width:980px){.footer-bank-inner{grid-template-columns:1fr}.footer-bank-inner>p{padding:18px 0 0;border-left:0;border-top:1px solid #b8b8bf}}
@media(max-width:620px){.footer-inner{width:min(100% - 36px,1440px)}.footer-bank-account{grid-template-columns:64px 116px minmax(0,1fr);column-gap:10px}.footer-bank-brand{height:46px}.footer-bank-brand img{width:118px}.footer-bank-detail b{font-size:14px}.footer-bank-detail strong{font-size:19px}.footer-bank-cs strong{font-size:24px}.footer-meta>div{width:100%;margin-right:0}.footer-company .admin-link{position:static;display:inline-block;margin-top:14px}}

/* Oversized process numbers */
.process-list li{position:relative;min-height:330px;padding:30px 28px 34px;overflow:hidden}
.process-list>li>span{display:block;font-family:"Barun Helvetica",Helvetica,Arial,sans-serif;font-size:clamp(58px,5vw,78px);font-weight:700;line-height:1;letter-spacing:-.065em;color:#8FD35F;text-shadow:0 0 32px rgba(116,176,77,.18)}
.process-list li:nth-child(n)>span{color:#74B04D}
.process-list li:after{content:"";position:absolute;right:-28px;top:88px;width:112px;height:112px;border:1px solid rgba(143,211,95,.24);border-radius:50%}
.process-list h3{font-size:25px;font-weight:700}.process-list p{max-width:245px}
@media(max-width:620px){.process-list li{min-height:260px}.process-list>li>span{font-size:62px}.process-list li:after{width:90px;height:90px}}

/* Denser page rhythm and the business-card shop green footer */
.section-pad{padding-top:100px;padding-bottom:100px}
.hero-copy{position:relative}
.hero-copy:before{content:"";position:absolute;left:-72px;top:88px;width:7px;height:126px;background:linear-gradient(#74B04D,#477627)}
.service-ribbon{min-height:84px;padding:18px clamp(28px,5vw,82px);display:flex;align-items:center;justify-content:center;gap:34px;background:linear-gradient(100deg,#477627,#6AA542);color:#fff;font:400 17px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.12em;white-space:nowrap;overflow:hidden}
.service-ribbon i{width:7px;height:7px;border-radius:50%;background:#C9EDB2;box-shadow:0 0 0 5px rgba(255,255,255,.09)}
.intro{position:relative;overflow:hidden}.intro:after{content:"GREEN HOUSING";position:absolute;right:-18px;bottom:-36px;font:700 clamp(70px,9vw,150px) "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:-.06em;color:rgba(71,118,39,.065);white-space:nowrap;pointer-events:none}
.intro-grid{position:relative;z-index:1}
.services{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff 0,#fff 68%,#F0F5EC 68%,#F0F5EC 100%)}
.services:before{content:"SERVICE";position:absolute;right:4%;top:56px;font:700 clamp(65px,8vw,128px) "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:-.06em;color:rgba(116,176,77,.07);pointer-events:none}
.services>.section-heading,.services>.service-grid{position:relative;z-index:1}
.service-card{box-shadow:0 15px 38px -28px rgba(31,59,13,.48)}
.performance{position:relative;overflow:hidden}.performance:before{content:"MATERIAL · DETAIL · FINISH";position:absolute;right:4%;top:46px;font:400 18px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.16em;color:rgba(71,118,39,.22)}
.quote{border-top:10px solid #74B04D}
footer.site-footer .footer-bank{border-color:#C6DDB8;background:#E4EFDE}
footer.site-footer .footer-bank-brand{border-left-color:#5D9339;color:#365B22}
footer.site-footer .footer-bank-label{color:#3E5D30}
footer.site-footer .footer-bank-detail strong{color:#365B22}
footer.site-footer .footer-bank-inner>p{border-left-color:#B7D0A8;color:#53644D}
footer.site-footer .ft-dark{background:#1F3B0D;color:#D4E2CB}
footer.site-footer .footer-links{border-bottom-color:rgba(255,255,255,.22)}
footer.site-footer .footer-links a{color:#D6E6CB}
footer.site-footer .footer-links a+a:before{background:rgba(255,255,255,.28)}
footer.site-footer .footer-company,footer.site-footer .footer-meta dt,footer.site-footer .footer-meta dd{color:#C4D5B9}
footer.site-footer .footer-meta dt{color:#9EC786}
footer.site-footer .footer-notice{border-top-color:rgba(255,255,255,.2);color:#B9CDAE}
footer.site-footer .footer-copy{color:#91A788}
footer.site-footer .footer-company .admin-link{color:#B9DDA4}
@media(max-width:1100px){.service-ribbon{gap:20px;font-size:14px}.hero-copy:before{display:none}}
@media(max-width:760px){.section-pad{padding-top:80px;padding-bottom:80px}.service-ribbon{justify-content:flex-start;overflow-x:auto}.performance:before{display:none}}

/* Image-led construction detail section */
.details{position:relative;background:linear-gradient(145deg,#E5F0DE 0%,#F7FAF5 58%,#EDF5E8 100%);overflow:hidden}
.details:before{content:"DETAIL";position:absolute;left:-18px;top:22px;font:700 clamp(78px,12vw,190px) "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:-.07em;color:rgba(71,118,39,.055);pointer-events:none}
.details>.section-heading,.detail-grid{position:relative;z-index:1}
.details h2 em{font-style:normal;color:#65A13E}
.detail-grid{display:grid;grid-template-columns:1.45fr .9fr;grid-template-rows:278px 278px;gap:14px}
.detail-grid article{position:relative;height:278px;overflow:hidden;background:#253428;box-shadow:0 20px 42px -30px rgba(31,59,13,.55)}
.detail-grid article:first-child{grid-row:1/3;height:570px}
.detail-grid article:nth-child(2){transform:none}
.detail-grid img{filter:saturate(.72) contrast(1.03);transition:transform .65s,filter .65s}
.detail-grid article:hover img{transform:scale(1.04);filter:saturate(.95)}
.detail-grid article:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(15,25,17,.82))}
.detail-grid article>div{position:absolute;z-index:2;left:28px;right:28px;bottom:27px;color:#fff}
.detail-grid span{display:block;margin-bottom:34px;font:700 46px/1 "Barun Helvetica",Helvetica,Arial,sans-serif;color:#9ED47A}
.detail-grid p{margin:0 0 5px;font:400 15px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.14em;color:#C7E3B7}
.detail-grid h3{margin:0;font-size:30px;font-weight:700;letter-spacing:-.045em}
.detail-note{margin:22px 0 0;font-size:13px;color:#6B776C}
@media(max-width:900px){.detail-grid{grid-template-columns:1fr;grid-template-rows:none}.detail-grid article,.detail-grid article:first-child,.detail-grid article:nth-child(2){height:400px;transform:none;grid-row:auto}}

/* Process drawings */
.process-list li{gap:18px;justify-content:flex-start}
.process-photo{display:block;flex:0 0 210px;width:calc(100% + 24px);height:210px;margin-left:-12px;object-fit:cover;object-position:center;border:1px solid rgba(95,153,64,.22)}
.process-list h3{display:flex;align-items:center;justify-content:space-between;gap:12px}
.process-art{flex:0 0 68px;width:68px;height:44px;margin:0;fill:none;stroke:#5F9940;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:.88;transition:opacity .25s,transform .25s}
.process-list li:hover .process-art{opacity:1;transform:translateY(-2px)}
.process-list li:after{display:none}
@media(max-width:620px){.process-photo{flex-basis:230px;width:100%;height:230px;margin-left:0}.process-art{flex-basis:62px;width:62px;height:40px}.process-list li{min-height:410px}}

/* Light process and reference sections */
.process{background:linear-gradient(145deg,#F0F6EC 0%,#FFFFFF 58%,#EAF3E4 100%);color:#202820;border-top:1px solid #D6E5CE;border-bottom:1px solid #D6E5CE}
.process .eyebrow{color:#5D9638}
.process h2 em{color:#65A13E}
.process-list{border-top-color:#C9DCC0;border-left-color:#C9DCC0}
.process-list li{background:rgba(255,255,255,.56);border-right-color:#C9DCC0;border-bottom-color:#C9DCC0}
.process-list li:nth-child(even){background:rgba(226,240,217,.48)}
.process-list p{color:#657066}
.process-art{stroke:#5F9940}
.gallery{background:linear-gradient(180deg,#FFFFFF 0%,#F3F7F0 100%);border-bottom:1px solid #D8E5D1}
.gallery .section-heading.light h2,.gallery .section-heading.light>p{color:#202820}
.gallery .section-heading.light .eyebrow{color:#5D9638}
.gallery-note{color:#69746B}

/* Alternating construction story */
.construction-focus{padding:0;background:#fff;border-top:1px solid #DCE6D7;border-bottom:1px solid #DCE6D7}
.focus-row{display:grid;grid-template-columns:1fr 1fr;min-height:680px}
.focus-image{min-height:680px;overflow:hidden;background:#E8EEE4}
.focus-image img{filter:saturate(.82) contrast(1.03);transition:transform .8s,filter .8s}
.focus-row:hover .focus-image img{transform:scale(1.025);filter:saturate(.98)}
.focus-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,7vw,120px);background:#F5F9F2;overflow:hidden}
.focus-row-reverse .focus-copy{background:#fff}
.focus-copy:after{content:"";position:absolute;width:260px;height:260px;right:-130px;bottom:-130px;border:1px solid rgba(101,161,62,.22);border-radius:50%}
.focus-number{position:absolute;right:clamp(34px,5vw,86px);top:clamp(38px,5vw,76px);font:300 72px/1 "Barun Helvetica",Helvetica,Arial,sans-serif;color:rgba(101,161,62,.22)}
.focus-copy h2{margin:0 0 28px;font-size:clamp(38px,4.2vw,66px);line-height:1.16;letter-spacing:-.055em}
.focus-copy h2 em{font-style:normal;color:#65A13E}
.focus-copy>p:not(.eyebrow){max-width:610px;margin:0;color:#657067;font-size:17px;line-height:1.85}
.focus-copy dl{width:100%;margin:38px 0 0;border-top:1px solid #CEDCC7}
.focus-copy dl div{display:grid;grid-template-columns:155px 1fr;gap:24px;padding:17px 0;border-bottom:1px solid #CEDCC7}
.focus-copy dt{font:600 12px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.1em;color:#4F872F}
.focus-copy dd{margin:0;font-size:15px;color:#39423C}
.focus-link{align-self:flex-start;margin-top:38px;padding:13px 0 6px;border-bottom:1px solid #31592A;color:#31592A;font-size:15px;font-weight:700}
.focus-link:after{content:" →";margin-left:12px}
.focus-note{margin:0;padding:18px max(24px,calc((100vw - var(--max))/2 + 72px));background:#EEF5EA;color:#6D786F;font-size:12px}
@media(max-width:900px){.focus-row,.focus-row-reverse{grid-template-columns:1fr}.focus-row-reverse .focus-copy{order:2}.focus-row-reverse .focus-image{order:1}.focus-image{min-height:480px}.focus-copy{min-height:620px;padding:70px 28px}.focus-copy dl div{grid-template-columns:1fr;gap:4px}.focus-number{font-size:56px}}
@media(max-width:620px){.focus-image{min-height:380px}.focus-copy{min-height:600px}.focus-copy h2{font-size:40px}}

/* Large estimate checklist */
.quote-intro ul{counter-reset:quote-check;margin-top:46px;border-top:2px solid #AFC7A2}
.quote-intro li{counter-increment:quote-check;position:relative;padding:22px 12px 22px 58px;border-bottom:1px solid #C5D6BC;font-size:clamp(19px,1.55vw,24px);font-weight:650;line-height:1.45;letter-spacing:-.025em}
.quote-intro li:before{content:"0" counter(quote-check);position:absolute;left:4px;top:26px;font:600 14px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.08em;color:#65A13E}
@media(max-width:620px){.quote-intro li{padding:19px 8px 19px 50px;font-size:19px}.quote-intro li:before{top:23px}}

/* Visual service categories directly below the header */
.category-section{padding:110px max(24px,calc((100vw - var(--max))/2 + 72px));background:#F2F7EF;border-top:1px solid #D2DFCB}
.category-heading{display:block;margin-bottom:44px}
.category-heading .eyebrow{margin:0 0 14px}
.category-heading h2{margin:0;font-size:clamp(38px,4vw,60px);line-height:1.15;letter-spacing:-.05em;text-align:left}
.category-heading h2 em{font-style:normal;color:#65A13E}
.visual-categories{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:10px;padding:0;background:transparent;border:0;position:relative;z-index:10}
.visual-categories a{position:relative;display:flex;align-items:flex-end;min-width:0;height:158px;overflow:hidden;background:#1F2822;color:#fff}
.visual-categories img{position:absolute;inset:0;filter:saturate(.58) brightness(.62);transition:transform .5s,filter .5s}
.visual-categories a:after{content:"";position:absolute;inset:28% 0 0;background:linear-gradient(transparent,rgba(13,23,16,.9))}
.visual-categories span{position:relative;z-index:2;display:block;width:100%;padding:17px 15px}
.visual-categories b{display:block;font-size:17px;line-height:1.25;letter-spacing:-.03em}
.visual-categories small{display:block;margin-top:5px;font:400 10px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.12em;color:#BBDDAB}
.visual-categories a:hover img{transform:scale(1.07);filter:saturate(.9) brightness(.74)}
.visual-categories a:hover span{background:linear-gradient(90deg,rgba(91,144,57,.72),transparent)}
@media(max-width:1100px){.visual-categories{grid-template-columns:repeat(4,1fr)}.visual-categories a{height:145px}}
@media(max-width:620px){.category-section{padding:76px 20px}.category-heading{display:block}.category-heading h2{margin-top:18px;text-align:left}.visual-categories{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.visual-categories a{flex:0 0 47vw;height:136px;scroll-snap-align:start}.visual-categories b{font-size:16px}}

/* Single-line header navigation */
.site-header{height:96px;min-height:96px;grid-template-columns:auto 1fr;grid-template-areas:"brand nav";column-gap:clamp(34px,5vw,76px);padding:0 clamp(28px,5vw,92px)}
.site-header .brand{grid-area:brand;height:96px}
.site-header .header-cta{display:none}
.site-header .main-nav{grid-area:nav;display:flex;align-items:center;justify-content:flex-start;gap:clamp(22px,2.6vw,46px);height:96px;border-top:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;scrollbar-width:none;-ms-overflow-style:none}
.site-header .main-nav .nav-company{margin-right:2px;padding-right:clamp(22px,2.6vw,42px);border-right:1px solid;border-image:linear-gradient(to bottom,transparent 0 36%,#C8D4C3 36% 64%,transparent 64% 100%) 1;color:#477627;font-weight:700}
.site-header .main-nav::-webkit-scrollbar{display:none}
.site-header .main-nav a{font-size:clamp(16px,1.25vw,20px);font-weight:420;letter-spacing:-.025em;padding:30px 0}
@media(max-width:960px){.site-header{height:88px;min-height:88px;grid-template-columns:auto 1fr;column-gap:26px;padding-inline:24px}.site-header .brand{height:88px}.site-header .main-nav{display:flex;height:88px;justify-content:flex-start;gap:22px;padding:0}.site-header .main-nav a{font-size:16px;padding:27px 0}}
@media(max-width:700px){.site-header{height:78px;min-height:78px;column-gap:16px;padding:0 18px}.site-header .brand{height:78px}.site-header .brand-name small{display:none}.site-header .main-nav{height:78px;gap:18px;justify-content:flex-start}.site-header .main-nav a{font-size:15px;padding:23px 0}}

/* Category detail page */
.category-detail{background:#fff}
.category-hero{display:grid;grid-template-columns:.92fr 1.08fr;min-height:650px}
.category-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:90px max(28px,calc((100vw - var(--max))/2 + 72px));background:#F1F6EE}
.category-hero-copy h1{margin:0 0 28px;font-size:clamp(36px,4vw,56px);line-height:1.08;letter-spacing:-.055em}
.category-hero-copy .category-lead{max-width:590px;margin:0 0 38px;color:#5F6A62;font-size:18px;line-height:1.8}
.category-hero-image{min-height:650px}
.category-hero.restoration-selection-hero{display:block;min-height:0;background:#F1F6EE}
.restoration-selection-hero .category-hero-copy{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.2fr);grid-template-rows:auto auto;align-items:end;column-gap:70px;row-gap:8px;min-height:0;padding:38px max(24px,calc((100vw - var(--max))/2 + 72px));border-bottom:1px solid #DDE4D9}
.restoration-selection-hero .category-hero-copy h1{grid-column:1;grid-row:1;margin:0;font-size:clamp(36px,3.5vw,52px);white-space:nowrap}
.restoration-selection-hero .category-hero-copy .eyebrow{grid-column:1;grid-row:2;margin:0}
.restoration-selection-hero .category-lead{grid-column:2;grid-row:1/3;max-width:650px;margin:0;font-size:17px;line-height:1.7;word-break:keep-all}
.restoration-selection-hero #heroQuote{display:none!important}
.restoration-selection-hero .category-hero-image{width:100%;height:clamp(430px,48vw,650px);min-height:0;overflow:hidden}
.restoration-selection-hero .category-hero-image img{object-position:center 36%}
.category-hero.product-selection-hero{grid-template-columns:1fr;min-height:auto}
.category-hero.product-selection-hero .category-hero-copy{display:grid;grid-template-columns:auto minmax(320px,1fr) auto;grid-template-rows:auto auto;align-items:center;justify-content:start;column-gap:56px;row-gap:7px;min-height:auto;padding:34px max(24px,calc((100vw - var(--max))/2 + 72px));border-bottom:1px solid #DDE4D9}
.category-hero.product-selection-hero .category-hero-copy .eyebrow{grid-column:1;grid-row:2;margin:0}
.category-hero.product-selection-hero .category-hero-copy h1{grid-column:1;grid-row:1;margin:0;white-space:nowrap;font-size:clamp(34px,3.2vw,50px)}
.category-hero.product-selection-hero .category-lead{grid-column:2;grid-row:1/3;max-width:560px;margin:0;font-size:16px;line-height:1.65;word-break:keep-all}
.category-hero.product-selection-hero .btn{grid-column:3;grid-row:1/3;white-space:nowrap}
.category-bottom-image{min-height:0;padding:70px max(24px,calc((100vw - var(--max))/2 + 72px));background:#F7F8F5}
.category-bottom-image img{display:block;width:100%;max-width:760px;max-height:520px;margin:0 auto;object-fit:contain;background:#fff}
.category-overview{display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}
.category-hero.product-selection-hero .category-overview-top{width:100%;padding-top:26px;padding-bottom:30px;align-items:center;row-gap:18px}
.category-hero.product-selection-hero .category-overview-top .category-description{word-break:keep-all}
.category-hero.product-selection-hero .category-overview-top .category-points{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));width:100%;max-width:1160px;justify-self:center;margin-top:0}
.ceiling-selection-hero .category-points li:last-child{text-align:left}
.ceiling-selection-hero .category-points .point-indent{display:inline-block;margin-left:17px}
.category-overview h2{margin:0;font-size:clamp(38px,4vw,62px);line-height:1.15;letter-spacing:-.055em}
.category-overview h2 em{display:inline-block;white-space:nowrap;font-style:normal;color:#74B04D}
.light-wall-selection-hero .category-overview h2{font-size:clamp(34px,3vw,43px);white-space:nowrap}
.light-wall-selection-hero .category-overview-top>div:nth-child(2){transform:translateY(25px)}
.category-description{margin:0 0 34px;color:#5E6861;font-size:18px;line-height:1.9}
.category-points{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0;padding:0;list-style:none}
.category-points li{padding:22px;border:1px solid #D5E2CF;background:#F7FAF5;font-size:16px;font-weight:600}
.category-points li:before{content:"+";margin-right:8px;color:#65A13E}
.category-scenes{display:grid;grid-template-columns:1.15fr .85fr;min-height:620px;background:#202820;color:#fff}
.category-scenes-image{min-height:620px}
.category-scenes-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(50px,7vw,110px)}
.category-scenes-copy h2{margin:0 0 26px;font-size:clamp(36px,4vw,58px);line-height:1.18;letter-spacing:-.05em}
.category-scenes-copy p{margin:0 0 30px;color:#C6D2C8;font-size:17px;line-height:1.85}
.category-scenes-copy ul{margin:0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.2)}
.category-scenes-copy li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.2);font-size:16px}
.category-cta{display:flex;justify-content:space-between;align-items:center;gap:40px;background:#EAF4E4}
.category-cta h2{margin:0;font-size:clamp(36px,4vw,58px);line-height:1.18;letter-spacing:-.05em}
.detail-footer{padding:32px max(24px,calc((100vw - var(--max))/2 + 72px));background:#202820;color:#B9C8BB;font-size:13px}
@media(max-width:900px){.category-hero,.category-overview,.category-scenes{grid-template-columns:1fr}.category-hero-copy{padding:75px 28px}.category-hero-image,.category-scenes-image{min-height:480px}.category-overview{gap:42px}.category-scenes-copy{padding:70px 28px}.category-cta{align-items:flex-start;flex-direction:column}}
@media(max-width:900px){.restoration-selection-hero .category-hero-copy{grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:7px;padding:30px 28px}.restoration-selection-hero .category-hero-copy h1{grid-column:1;grid-row:1}.restoration-selection-hero .category-hero-copy .eyebrow{grid-column:1;grid-row:2}.restoration-selection-hero .category-lead{grid-column:1;grid-row:3;margin-top:14px}.restoration-selection-hero .category-hero-image{height:460px}}
@media(max-width:900px){.category-hero.product-selection-hero .category-overview-top{padding-top:22px;padding-bottom:26px}.category-hero.product-selection-hero .category-overview-top .category-points{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.category-hero.product-selection-hero .category-overview-top .category-points{grid-template-columns:1fr}}
@media(max-width:620px){.light-wall-selection-hero .category-overview h2{font-size:30px;letter-spacing:-.065em}}
@media(max-width:900px){.light-wall-selection-hero .category-overview-top>div:nth-child(2){transform:none}}
@media(max-width:620px){.category-hero-copy h1{font-size:32px}.category-points{grid-template-columns:1fr}.category-hero-image,.category-scenes-image{min-height:380px}}
@media(max-width:620px){.restoration-selection-hero .category-hero-copy{padding:24px 20px}.restoration-selection-hero .category-hero-copy h1{font-size:30px}.restoration-selection-hero .category-lead{font-size:15px}.restoration-selection-hero .category-hero-image{height:340px;min-height:340px}}
@media(max-width:900px){.category-hero.product-selection-hero .category-hero-copy{grid-template-columns:1fr;grid-template-rows:auto auto auto auto;gap:7px;padding:28px}.category-hero.product-selection-hero .category-hero-copy h1{grid-column:1;grid-row:1}.category-hero.product-selection-hero .category-hero-copy .eyebrow{grid-column:1;grid-row:2}.category-hero.product-selection-hero .category-lead{grid-column:1;grid-row:3;margin-top:14px}.category-hero.product-selection-hero .btn{grid-column:1;grid-row:4;justify-self:start;margin-top:12px}}
@media(max-width:620px){.category-hero.product-selection-hero .category-hero-copy{padding:24px 20px}.category-hero.product-selection-hero .category-hero-copy h1{font-size:30px}.category-bottom-image{min-height:0;padding:44px 20px}.category-bottom-image img{max-height:360px}}

/* Soundproof category — wide piano-room reference image */
.category-hero.product-selection-hero.soundproof-selection-hero{display:block;background:#F7F9F5}
.soundproof-selection-hero .soundproof-wide-image{width:min(100% - 48px,var(--max));height:clamp(390px,43vw,580px);min-height:0;margin:0 auto 72px;overflow:hidden;background:#E8ECE5}
.soundproof-selection-hero .soundproof-wide-image img{width:100%;height:100%;object-fit:cover;object-position:center 55%;filter:saturate(.82) contrast(1.02)}
.soundproof-selection-hero .category-overview-top{align-items:start}
.soundproof-selection-hero .category-overview-top .category-description{margin-top:64px}
@media(max-width:700px){.soundproof-selection-hero .category-overview-top .category-description{margin-top:10px}.soundproof-selection-hero .soundproof-wide-image{width:calc(100% - 40px);height:330px;margin-bottom:48px}}

/* Product catalogue — light wall and glass category pages only */
.product-catalog{padding:118px max(24px,calc((100vw - var(--max))/2 + 72px));background:#F7F8F5;border-top:1px solid #DDE4D9}
.product-catalog.light-wall-catalog{padding-top:36px}
.product-catalog[hidden]{display:none}
.category-scenes[hidden]{display:none}
.catalog-heading{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;align-items:end;margin-bottom:54px}
.catalog-heading .eyebrow{grid-column:1/-1;margin:0 0 -12px}
.light-wall-catalog .catalog-heading .eyebrow{margin-bottom:-28px}
.catalog-heading h2{margin:0;font-size:clamp(42px,4.7vw,70px);line-height:1.08;letter-spacing:-.06em}
.light-wall-only-catalog .catalog-heading{margin-bottom:34px}
.light-wall-only-catalog .catalog-heading h2{font-size:clamp(32px,2.8vw,40px);white-space:nowrap}
.light-wall-only-catalog .catalog-heading h2 em{color:#74B04D;font:inherit;font-style:normal}
.glass-catalog .catalog-heading h2{font-size:clamp(34px,3.2vw,46px);white-space:nowrap}
.glass-catalog .catalog-heading h2 em{color:#65A13E;font:inherit;font-style:normal}
.soundproof-catalog .catalog-heading h2{font-size:clamp(38px,3.7vw,52px);white-space:nowrap}
.soundproof-catalog .catalog-heading h2 em{color:#65A13E;font:inherit;font-style:normal}
.ceiling-catalog .catalog-heading h2 em{color:#65A13E;font:inherit;font-style:normal}
.ceiling-catalog .catalog-heading h2{font-size:clamp(30px,3vw,46px);white-space:nowrap}
@media(min-width:701px){.ceiling-catalog .catalog-heading .eyebrow{grid-column:1/-1;grid-row:1}.ceiling-catalog .catalog-heading h2{grid-column:1;grid-row:2;align-self:center}.ceiling-catalog .catalog-heading>p:last-child{grid-column:2;grid-row:2;align-self:center}}
.catalog-heading>p:last-child{max-width:680px;margin:0;color:#687169;font-size:18px;line-height:1.8}
.catalog-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.catalog-card{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #DCE3D8;transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.catalog-card:hover{transform:translateY(-5px);border-color:#8FB67B;box-shadow:0 18px 44px rgba(45,66,38,.1)}
.catalog-card-media{position:relative;height:230px;overflow:hidden;background:#E8EDE5}
.catalog-empty-photo{width:100%;height:100%;background:#F3F5F1}
.catalog-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.catalog-card-media img.is-contain{object-fit:contain;padding:20px;background:#fff}
.catalog-card-media img.wall-left{object-fit:cover;object-position:left bottom;transform:scale(1.35);transform-origin:left bottom}
.photo-highlight{position:absolute;z-index:1;pointer-events:none;border:4px solid #E43F35;box-shadow:0 0 0 1px rgba(255,255,255,.75)}
.photo-highlight.sliding-door{left:49.5%;top:20%;width:37.5%;height:67%}
.catalog-mini-diagram{position:absolute;right:16px;bottom:16px;z-index:3;width:29%;margin:0;padding:8px;background:rgba(255,255,255,.94);border:1px solid #C9D4C5;box-shadow:0 8px 24px rgba(28,43,33,.16);cursor:zoom-in;transform-origin:right bottom;transition:transform .25s ease,box-shadow .25s ease}
.catalog-mini-diagram:hover{z-index:5;transform:scale(1.9);box-shadow:0 16px 42px rgba(28,43,33,.24)}
.glass-catalog .catalog-card-media>.catalog-mini-diagram>img{position:static;width:100%;height:auto;display:block;object-fit:contain;transform:none}
.glass-catalog .catalog-card-media.has-photo-pair{display:grid;grid-template-rows:minmax(0,1fr) 130px;padding-top:52px}
.catalog-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:3px;min-height:0;overflow:hidden;background:#E8EDE5}
.catalog-photo-pair>img{width:100%;height:100%;object-fit:cover;min-width:0}
.catalog-image-note{position:absolute;left:14px;top:62px;z-index:2;padding:6px 9px;background:rgba(255,255,255,.9);color:#56645A;font-size:12px;font-weight:600}
.catalog-mini-diagram.is-strip{position:relative;right:auto;bottom:auto;width:auto;height:130px;margin:0;padding:5px 14px;background:#F7F9F6;border-width:1px 0 0;box-shadow:none;transform:none!important;transform-origin:center bottom;cursor:zoom-in}
.catalog-mini-diagram.is-strip:hover{z-index:6;transform:scale(1.9)!important;box-shadow:0 14px 36px rgba(28,43,33,.22)}
.glass-catalog .catalog-card-media>.catalog-mini-diagram.is-strip>img{width:100%;height:100%;object-fit:contain}
.catalog-installed-media{height:230px;overflow:hidden;border-top:1px solid #DCE3D8;background:#F3F5F1}
.catalog-installed-media{position:relative}.catalog-installed-media>span{position:absolute;left:12px;top:12px;z-index:2;padding:6px 9px;border-radius:3px;background:rgba(24,43,32,.86);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em}
.catalog-installed-media img{width:100%;height:100%;object-fit:cover}
.catalog-card-copy{display:flex;flex:1;flex-direction:column}
.catalog-photo-btn{display:flex;align-items:center;justify-content:center;min-height:48px;margin-top:24px;border:1px solid #A8B6AA;background:#fff;color:#48604F;font-size:15px;font-weight:500;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.catalog-photo-btn:hover{border-color:#5F7E65;background:#F4F8F2}
.catalog-photo-btn input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.catalog-quote-btn{display:flex;align-items:center;justify-content:center;min-height:50px;margin-top:24px;border:1px solid #26332B;background:#26332B;color:#fff;font-size:15px;font-weight:500;transition:background .2s ease,color .2s ease}
.catalog-photo-btn+.catalog-quote-btn{margin-top:10px}
.catalog-quote-btn:hover{background:#fff;color:#26332B}
.catalog-card:hover .catalog-card-media img{transform:scale(1.035)}
.catalog-card:hover .catalog-card-media img.wall-left{transform:scale(1.39)}
.catalog-card-media>.catalog-card-label{position:absolute;left:18px;bottom:16px;z-index:4;padding:7px 10px;background:rgba(25,32,26,.84);color:#fff;font-size:11px;letter-spacing:.13em}
.glass-catalog .catalog-card-media{padding-top:44px;background:#fff}
.glass-catalog .catalog-card-media>img,.glass-catalog .catalog-card-media>.catalog-illustration{position:absolute;left:0;right:0;bottom:0;width:100%;height:calc(100% - 44px)}
.glass-catalog .catalog-card-media>span{top:0;left:0;bottom:auto;z-index:2;padding:7px 10px;background:#26332B;border:0;box-shadow:none;color:#fff;font-size:10px}
.light-wall-catalog .catalog-card-media>span{left:18px;top:18px;bottom:auto;padding:10px 14px 9px;background:rgba(255,255,255,.94);border:1px solid #BFD0B7;border-left:4px solid #68A047;box-shadow:0 7px 18px rgba(38,57,34,.12);color:#315026;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-weight:500;line-height:1;letter-spacing:.09em}
.soundproof-catalog .catalog-card{position:relative;padding-top:42px}
.soundproof-catalog .catalog-card>.catalog-card-label{position:absolute;top:0;left:0;z-index:4;padding:10px 14px;background:#26332B;color:#fff;font-size:12px;line-height:1;letter-spacing:.11em}
.ceiling-catalog .catalog-card{position:relative;padding-top:42px}
.ceiling-catalog .catalog-card>.catalog-card-label{position:absolute;top:0;left:0;z-index:4;padding:10px 14px;background:#26332B;color:#fff;font-size:12px;line-height:1;letter-spacing:.11em}
.ceiling-catalog .catalog-card-media{height:250px;background:#f3f5f1}
.ceiling-catalog .catalog-card-media>img{height:250px;object-fit:cover}
.soundproof-catalog .catalog-card-media{height:230px;padding-top:0;background:#fff}
.soundproof-catalog .catalog-card-media>img{height:230px}
.soundproof-catalog .catalog-card-media>img.is-contain{padding:0 4px;background:#f5f7f2}
.catalog-bottom-quote{display:flex;align-items:center;justify-content:center;width:100%;min-height:62px;margin:34px 0 0;background:#26332B;color:#fff;font-size:18px;font-weight:700;letter-spacing:-.02em;text-decoration:none}
.catalog-bottom-quote:hover{background:#4f7741}
.ceiling-scope{padding-top:38px;background:#eef2eb}
.ceiling-scope-head{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:20px 70px;align-items:end;max-width:1180px;margin:0 auto 44px}
.ceiling-scope-head .eyebrow{grid-column:1/-1;margin:0;color:#65A13E}
.ceiling-scope-head h2{margin:0;font-family:inherit;font-size:clamp(40px,5vw,68px);font-weight:400;line-height:1.08;letter-spacing:-.055em}.ceiling-scope-head h2 em{color:#65A13E;font:inherit;font-style:normal}
.ceiling-scope-head>p:last-child{margin:0 0 4px;color:#566158;font-size:18px;line-height:1.75}
.ceiling-scope-form{max-width:1180px;margin:0 auto;display:grid;gap:22px}
.ceiling-scope-form fieldset{margin:0;padding:28px;border:1px solid #c9d4c5;background:#fff}
.ceiling-scope-form legend{padding:0 14px 0 0;color:#26332b;font-family:inherit;font-size:clamp(25px,2.3vw,32px);font-weight:400;letter-spacing:-.045em}.ceiling-scope-form legend span{display:inline-block;width:auto;height:auto;margin-right:14px;background:transparent;color:#74b04d;font-family:inherit;font-size:34px;font-weight:400;line-height:1;letter-spacing:-.04em;vertical-align:-2px}
.choice-grid,.check-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.choice-grid label,.check-grid label{position:relative;display:flex;flex-direction:column;gap:6px;min-height:105px;padding:20px;border:1px solid #d4ddd0;background:#f8faf6;cursor:pointer}.choice-grid input,.check-grid input{position:absolute;top:16px;right:16px;accent-color:#5f8e49}.choice-grid b,.check-grid b{padding-right:24px;font-size:18px}.choice-grid small,.check-grid small{color:#748076;font-size:14px;line-height:1.45}.choice-grid label:has(input:checked),.check-grid label:has(input:checked){border-color:#5f8e49;box-shadow:inset 0 0 0 2px #5f8e49;background:#f1f7ed}
.scope-input-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.scope-input-grid label{display:grid;gap:9px;color:#39453d;font-weight:700}.scope-input-grid input,.scope-input-grid select{width:100%;height:50px;padding:0 13px;border:1px solid #cbd4c8;background:#fff;font:inherit}
.scope-total-choice{grid-template-columns:repeat(3,minmax(0,1fr))}.ceiling-scope-submit{width:min(100%,620px);min-height:58px;justify-self:start;border:0;cursor:pointer;font-family:inherit}
@media(max-width:900px){.choice-grid,.check-grid,.scope-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ceiling-scope-head{grid-template-columns:1fr;gap:18px}.ceiling-scope-head .eyebrow{grid-column:1}}
@media(max-width:560px){.ceiling-scope-form fieldset{padding:22px 16px}.choice-grid,.check-grid,.scope-input-grid,.scope-total-choice{grid-template-columns:1fr}.choice-grid label,.check-grid label{min-height:88px}}
@media(max-width:700px){.ceiling-scope{padding-top:28px}}
.product-catalog.light-wall-catalog.glass-catalog .catalog-card-media>span{top:0;left:0;bottom:auto;padding:7px 10px;background:#26332B;border:0;box-shadow:none;color:#fff;font-size:10px}
.catalog-card-copy{padding:28px 26px 30px}
.catalog-card-copy h3{margin:0 0 13px;font-size:26px;letter-spacing:-.04em}
.glass-catalog .catalog-card-copy h3 em{color:#65A13E;font:inherit;font-style:normal}
.soundproof-catalog #materialTitle em{color:#65A13E;font:inherit;font-style:normal}
.catalog-card-copy p{min-height:78px;margin:0;color:#687169;font-size:15px;line-height:1.72}
.catalog-card-copy .catalog-spec{margin:16px 0 0;padding:15px;background:#F3F6F1;border-left:3px solid #6C8B72;color:#506057}
.catalog-spec>strong{display:block;margin-bottom:10px;color:#263D30;font-size:18px;font-weight:700;line-height:1.4}
.catalog-spec>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.catalog-spec span{display:flex;align-items:center;min-height:46px;padding:9px 10px;background:#fff;border:1px solid #DDE6D9;color:#657067;font-size:15px;font-weight:500;line-height:1.4;word-break:keep-all}
.catalog-spec span.is-size{border-color:#B9CCB4;color:#3E693F;font-weight:700}
.light-wall-catalog .catalog-card-copy p{min-height:96px;font-size:18px;line-height:1.72;letter-spacing:-.025em;word-break:keep-all}
.catalog-card-copy ul{display:flex;flex-wrap:wrap;gap:6px;margin:20px 0 0;padding:0;list-style:none}
.catalog-card-copy li{padding:6px 9px;background:#EFF5EB;color:#557046;font-size:12px;font-weight:600}
.glass-catalog .catalog-card-copy ul{flex-wrap:nowrap;gap:5px}
.glass-catalog .catalog-card-copy li{padding:6px 7px;font-size:11px;white-space:nowrap}
.light-wall-catalog .catalog-card-copy li{padding:11px 15px;font-size:19px;line-height:1.25;font-weight:600;letter-spacing:-.025em}
.product-catalog.light-wall-catalog.glass-catalog .catalog-card-copy li{padding:8px 6px;font-size:18px;line-height:1.25;white-space:nowrap}
@media(min-width:1001px){
  .glass-catalog .catalog-card{grid-column:1/-1;display:grid;grid-template-columns:minmax(500px,1.25fr) minmax(0,1fr)}
  .glass-catalog .catalog-card .catalog-card-media{height:auto;min-height:430px;padding-top:52px}
  .glass-catalog .catalog-card .catalog-card-media>img{height:calc(100% - 52px)}
  .glass-catalog .catalog-card .catalog-card-media>img.is-contain{padding:10px 24px 20px}
  .glass-catalog .catalog-card .catalog-card-copy{justify-content:center;padding:40px 42px}
}

/* Main introduction photo: walls and ceiling visible together */
.intro-photo{position:relative;z-index:1;height:clamp(330px,32vw,470px);margin:58px 0 0;overflow:hidden;background:#dde6d8}
.intro-photo img{object-position:center 48%;filter:saturate(.86) contrast(1.02)}
@media(max-width:760px){.intro-photo{height:280px;margin-top:36px}.intro-photo img{object-position:57% center}}

/* Keep the company navigation title horizontal during responsive changes */
.site-header .nav-company{white-space:nowrap;writing-mode:horizontal-tb}

/* Company intro: align copy with the Korean heading, not the English eyebrow */
.company-intro{grid-template-rows:auto auto;align-items:start}
.company-intro>div:first-child{display:contents}
.company-intro>div:first-child>.eyebrow{grid-column:1;grid-row:1}
.company-intro>div:first-child>h2{grid-column:1;grid-row:2}
.company-intro>.company-intro-copy{grid-column:2;grid-row:2;align-self:start}
@media(max-width:960px){.company-intro{grid-template-rows:auto}.company-intro>div:first-child{display:block}.company-intro>div:first-child>.eyebrow,.company-intro>div:first-child>h2,.company-intro>.company-intro-copy{grid-column:auto;grid-row:auto}.company-intro>.company-intro-copy{margin-top:32px}}

/* Company construction-principle photo cards */
.company-principle-grid article{min-height:0;padding:0 0 30px;overflow:hidden;background:#fff}
.company-principle-grid article figure{height:220px;margin:0 0 22px;overflow:hidden;background:#e8ede5}
.company-principle-grid article figure img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}
.company-principle-grid article:hover figure img{transform:scale(1.025)}
.company-principle-grid article span{display:block;padding:0 28px;font-size:35px}
.company-principle-grid article h3{margin:16px 28px 12px}
.company-principle-grid article p{margin:0 28px}
@media(max-width:620px){.company-principle-grid article figure{height:280px}.company-principle-grid article span{padding-top:2px}}
.catalog-options{margin-top:86px;border-top:1px solid #CCD7C7}
.catalog-option-block{display:grid;grid-template-columns:.76fr 1.24fr;gap:6vw;padding:64px 0;border-bottom:1px solid #CCD7C7}
.catalog-subheading{display:flex;gap:24px;align-items:flex-start}
.catalog-subheading>span{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:50%;background:#68A047;color:#fff;font:500 15px/1 Arial,sans-serif}
.catalog-subheading h3{margin:0 0 12px;font-size:clamp(30px,3vw,46px);letter-spacing:-.05em}
.catalog-subheading p{max-width:460px;margin:0;color:#747D75;font-size:15px;line-height:1.75}
.light-wall-catalog .catalog-subheading p{max-width:560px;font-size:18px;line-height:1.72;letter-spacing:-.025em;word-break:keep-all}
.material-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.material-card{min-height:180px;padding:24px 20px;background:#fff;border:1px solid #DEE5DA}
.material-card h4{margin:18px 0 7px;font-size:18px;letter-spacing:-.035em}
.material-card p{margin:0;color:#7A827B;font-size:12px;line-height:1.6}
.material-symbol{position:relative;width:74px;height:48px}
.material-symbol i{position:absolute;display:block;border:2px solid #74975F;background:#EDF4E9}
.material-symbol.stud i:nth-child(1){inset:4px 24px 4px 4px;border-right:0}.material-symbol.stud i:nth-child(2){right:7px;top:4px;width:20px;height:8px}.material-symbol.stud i:nth-child(3){right:7px;bottom:4px;width:20px;height:8px}
.material-symbol.runner i:nth-child(1){left:3px;right:3px;bottom:5px;height:14px}.material-symbol.runner i:nth-child(2){left:3px;bottom:18px;width:8px;height:25px}.material-symbol.runner i:nth-child(3){right:3px;bottom:18px;width:8px;height:25px}
.material-symbol.board i:nth-child(1){inset:3px 12px;transform:skewY(-5deg)}.material-symbol.board i:nth-child(2){inset:9px 6px;transform:skewY(-5deg);background:transparent}.material-symbol.board i:nth-child(3){display:none}
.material-symbol.insulation i{border:0;background:#D8E7CE}.material-symbol.insulation i:nth-child(1){inset:4px 5px}.material-symbol.insulation i:nth-child(2){left:10px;right:10px;top:13px;height:2px;background:#74975F;box-shadow:0 9px #74975F,0 18px #74975F}.material-symbol.insulation i:nth-child(3){display:none}
.material-symbol.finish i:nth-child(1){left:5px;top:4px;width:10px;height:40px}.material-symbol.finish i:nth-child(2){left:31px;top:4px;width:10px;height:40px;border-radius:10px}.material-symbol.finish i:nth-child(3){right:5px;top:4px;width:18px;height:18px;transform:rotate(45deg)}
.material-symbol.sgp i:nth-child(1){inset:3px 5px}.material-symbol.sgp i:nth-child(2){left:25px;top:3px;bottom:3px;width:2px;background:#74975F}.material-symbol.sgp i:nth-child(3){right:23px;top:3px;bottom:3px;width:2px;background:#74975F}
.material-symbol.clear-glass i:nth-child(1),.material-symbol.frosted-glass i:nth-child(1),.material-symbol.tinted-glass i:nth-child(1),.material-symbol.film i:nth-child(1){inset:3px 10px;background:linear-gradient(135deg,rgba(255,255,255,.75),rgba(163,202,205,.35))}.material-symbol.frosted-glass i:nth-child(1){background:linear-gradient(135deg,#fff,#D6E2E0)}.material-symbol.tinted-glass i:nth-child(1){background:linear-gradient(135deg,#928372,#4B5755)}.material-symbol.film i:nth-child(1){background:repeating-linear-gradient(135deg,#E7EFEA 0 5px,#C9D8CE 5px 10px)}
.material-symbol.swing-door i:nth-child(1),.material-symbol.sliding-door i:nth-child(1){left:16px;top:2px;width:39px;height:44px;background:rgba(189,216,214,.35)}.material-symbol.swing-door i:nth-child(2){left:18px;top:4px;width:33px;height:40px;transform-origin:left;transform:perspective(80px) rotateY(-28deg);background:rgba(255,255,255,.45)}.material-symbol.sliding-door i:nth-child(2){left:7px;right:7px;top:0;height:3px;background:#74975F}.material-symbol.sliding-door i:nth-child(3){left:30px;top:5px;width:34px;height:39px;background:rgba(255,255,255,.5)}
.swatch-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.color-swatch{padding:10px;background:#fff;border:1px solid #DEE5DA}
.color-swatch>span{display:block;height:82px;background:var(--swatch);border:1px solid rgba(0,0,0,.08)}
.color-swatch b{display:block;margin:12px 0 3px;font-size:14px}.color-swatch small{color:#8A918B;font:11px/1.2 Arial,sans-serif;letter-spacing:.08em}
.catalog-note{grid-column:2;margin:14px 0 0;color:#8A918B;font-size:12px;line-height:1.6}
.ceiling-catalog{padding-bottom:0}
.ceiling-catalog .catalog-options{margin-top:58px}
.ceiling-catalog .catalog-option-block:last-child{grid-template-rows:auto 1fr;padding-bottom:24px}
.ceiling-catalog .catalog-option-block:last-child .catalog-subheading{grid-column:1;grid-row:1}
.ceiling-catalog .catalog-option-block:last-child .swatch-grid{grid-column:2;grid-row:1 / span 2}
.ceiling-catalog .catalog-option-block:last-child .catalog-note{grid-column:1;grid-row:2;margin:-14px 0 0 72px;max-width:470px;font-size:13px;line-height:1.65}
.catalog-color-chart{grid-column:1/-1;margin:0;background:#fff;border:1px solid #DCE3D8;padding:18px}
.catalog-color-chart img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain}
.category-product-image{object-fit:contain!important;padding:7%;background:#fff}
.catalog-illustration{position:relative;width:100%;height:100%;overflow:hidden;background:linear-gradient(140deg,#EEF3EB,#DDE8D8)}
.catalog-illustration i{position:absolute;display:block}
.catalog-illustration.fire i:nth-child(1),.catalog-illustration.water i:nth-child(1),.catalog-illustration.panel i:nth-child(1){left:22%;right:22%;top:14%;bottom:12%;border:8px solid #86A874;background:#F7F9F5;box-shadow:16px 13px 0 #C5D7BC}.catalog-illustration.fire i:nth-child(2){left:43%;top:36%;width:38px;height:48px;background:#D66B45;border-radius:55% 45% 60% 40%;transform:rotate(45deg)}.catalog-illustration.water i:nth-child(2){left:45%;top:33%;width:36px;height:48px;background:#70A6A7;border-radius:50% 50% 58% 42%;transform:rotate(45deg)}.catalog-illustration.panel i:nth-child(2),.catalog-illustration.panel i:nth-child(3){top:14%;bottom:12%;width:5px;background:#86A874}.catalog-illustration.panel i:nth-child(2){left:42%}.catalog-illustration.panel i:nth-child(3){right:42%}
.catalog-illustration.lower-panel i:nth-child(1),.catalog-illustration.double-glass i:nth-child(1){left:14%;right:14%;top:13%;bottom:10%;border:7px solid #3A4540;background:linear-gradient(to bottom,rgba(194,220,219,.45) 0 55%,#BBC7B6 55%)}.catalog-illustration.lower-panel i:nth-child(2){left:49%;top:13%;bottom:10%;width:6px;background:#3A4540}.catalog-illustration.double-glass i:nth-child(1){background:linear-gradient(135deg,rgba(255,255,255,.85),rgba(154,197,198,.36))}.catalog-illustration.double-glass i:nth-child(2){left:23%;right:23%;top:23%;bottom:20%;border:3px solid rgba(58,69,64,.55)}
@media(max-width:1000px){.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-option-block{grid-template-columns:1fr;gap:36px}.catalog-note{grid-column:1}.material-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1000px){.ceiling-catalog .catalog-option-block:last-child{grid-template-rows:auto}.ceiling-catalog .catalog-option-block:last-child .catalog-subheading,.ceiling-catalog .catalog-option-block:last-child .swatch-grid,.ceiling-catalog .catalog-option-block:last-child .catalog-note{grid-column:1;grid-row:auto}.ceiling-catalog .catalog-option-block:last-child .catalog-note{margin:-18px 0 0 64px}}
@media(max-width:700px){.product-catalog{padding:78px 20px}.product-catalog.light-wall-catalog{padding-top:30px}.catalog-heading{grid-template-columns:1fr;gap:18px}.catalog-heading .eyebrow,.light-wall-catalog .catalog-heading .eyebrow{grid-column:1;margin-bottom:0}.catalog-heading h2{font-size:42px}.catalog-heading>p:last-child{font-size:16px}.catalog-products{grid-template-columns:1fr}.catalog-card-media,.catalog-installed-media{height:220px}.catalog-card-copy p{min-height:0}.catalog-spec>div{grid-template-columns:1fr}.catalog-options{margin-top:58px}.catalog-option-block{padding:48px 0}.catalog-subheading{gap:14px}.catalog-subheading>span{flex-basis:40px;height:40px}.material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.material-card{min-height:165px;padding:20px 16px}.swatch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.color-swatch>span{height:70px}}
@media(max-width:700px){.glass-catalog .catalog-heading h2{font-size:30px;letter-spacing:-.065em}}
@media(max-width:700px){.light-wall-only-catalog .catalog-heading{margin-bottom:28px}.light-wall-only-catalog .catalog-heading h2{font-size:26px;letter-spacing:-.065em}}
@media(max-width:700px){.soundproof-catalog .catalog-heading h2{font-size:32px;letter-spacing:-.065em}}
@media(max-width:700px){.catalog-mini-diagram{width:31%;right:10px;bottom:10px}.catalog-mini-diagram:hover{transform:scale(1.55)}}
@media(max-width:700px){.glass-catalog .catalog-card-media.has-photo-pair{grid-template-rows:minmax(0,1fr) 82px;padding-top:44px}.catalog-mini-diagram.is-strip{height:82px;padding:3px 8px}.catalog-mini-diagram.is-strip:hover{transform:scale(1.3)!important}.catalog-image-note{top:52px;font-size:10px}}
@media(max-width:700px){.glass-catalog .catalog-card-copy ul{flex-wrap:wrap}}

/* Company introduction */
.main-nav .is-current:after{right:0;background:#5f943f}
.company-hero{display:grid;grid-template-columns:minmax(380px,.86fr) minmax(0,1.14fr);min-height:660px;background:#f4f7f1}
.company-hero-copy{display:flex;flex-direction:column;justify-content:center;min-width:380px;padding:88px max(32px,calc((100vw - var(--max))/2 + 72px)) 88px max(32px,calc((100vw - var(--max))/2 + 72px));writing-mode:horizontal-tb;text-orientation:mixed}
.company-hero-copy h1{margin:0 0 34px;font-size:clamp(46px,5.3vw,78px);font-weight:500;line-height:1.1;letter-spacing:-.06em;word-break:keep-all;overflow-wrap:normal;writing-mode:horizontal-tb;text-orientation:mixed}.company-hero-copy h1 em{color:#65a13e;font-style:normal}
.company-hero-copy>p:last-child{max-width:610px;margin:0;color:#5f6961;font-size:18px;line-height:1.9;word-break:keep-all}
.company-hero-image{min-height:660px;overflow:hidden}.company-hero-image img{object-position:center}
.company-intro{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;background:#fff}
.company-intro h2,.company-section-title h2,.company-closing h2{margin:0;font-size:clamp(38px,4.5vw,64px);font-weight:450;line-height:1.16;letter-spacing:-.055em}.company-intro h2 em{color:#65a13e;font-style:normal}
.company-intro-copy{align-self:end}.company-intro-copy p{margin:0 0 22px;color:#566158;font-size:19px;line-height:1.95;word-break:keep-all}
.company-principles{background:#fff;color:#17221b}.company-section-title{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:54px}.company-section-title .eyebrow{margin:0}.company-section-title>p:last-child{max-width:560px;margin:0;color:#677269;font-size:17px}
.company-principle-title{justify-content:flex-start;gap:28px}.company-principle-title .eyebrow{margin-bottom:8px;color:#8fcb69}
.company-principle-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #cdd8c9;border-left:1px solid #cdd8c9}.company-principle-grid article{min-height:310px;padding:30px;border-right:1px solid #cdd8c9;border-bottom:1px solid #cdd8c9}.company-principle-grid span{color:#65a13e;font-size:42px;font-weight:300}.company-principle-grid h3{margin:76px 0 14px;font-size:23px}.company-principle-grid p{margin:0;color:#667168;font-size:15px;line-height:1.75}
.company-services{background:#f3f6f0}.company-service-list{border-top:1px solid #bccab7}.company-service-list a{display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;padding:24px 8px;border-bottom:1px solid #bccab7;transition:.2s}.company-service-list a:hover{padding-left:22px;background:#fff}.company-service-list b{font-size:25px;font-weight:500}.company-service-list span{color:#657067;font-size:17px}
.company-service-title{display:grid;grid-template-columns:auto auto 1fr;align-items:end;justify-content:stretch;gap:28px}.company-service-title .eyebrow{margin:0 0 8px}.company-service-title>p:last-child{justify-self:end;text-align:right}
.company-closing{display:grid;grid-template-columns:1fr .7fr;gap:10vw;align-items:end;background:#fff}.company-closing>div:first-child>p:not(.eyebrow){max-width:650px;margin:28px 0 34px;color:#667168;font-size:18px;line-height:1.8}
.representative-sign{display:flex;min-height:250px;flex-direction:column;align-items:center;justify-content:center;padding:28px;color:#111}.representative-sign img{display:block;width:min(100%,540px);height:auto;filter:brightness(0)}.representative-sign b{margin-top:18px;font-size:17px;font-weight:500;letter-spacing:.12em}
@media(max-width:960px){.company-hero,.company-intro,.company-closing{grid-template-columns:1fr}.company-hero-copy{min-width:0}.company-hero-image{min-height:460px}.company-principle-grid{grid-template-columns:1fr 1fr}.company-section-title{display:block}.company-section-title>p:last-child{margin-top:20px}.company-principle-title .eyebrow{margin-top:12px}.company-service-title .eyebrow{margin-top:12px}.company-service-title>p:last-child{justify-self:auto;text-align:left}.representative-sign{min-height:210px}}
@media(max-width:620px){.company-hero-copy{padding:64px 20px}.company-hero-copy h1{font-size:46px}.company-hero-image{min-height:360px}.company-intro-copy p{font-size:17px}.company-principle-grid{grid-template-columns:1fr}.company-principle-grid article{min-height:245px}.company-principle-grid h3{margin-top:44px}.company-service-list a{grid-template-columns:1fr;gap:5px}.company-service-list b{font-size:22px}.representative-sign{padding:12px}.representative-sign b{font-size:15px}}

/* Inquiry board */
.inquiry-page{background:#f5f7f2}.inquiry-head{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;align-items:start;gap:0 60px;padding-top:110px;padding-bottom:62px;background:#fff}.inquiry-head>div:first-child{display:contents}.inquiry-head>div:first-child>.eyebrow{grid-column:1;grid-row:1}.inquiry-head h1{grid-column:1;grid-row:2;align-self:center;margin:8px 0 0;font-size:clamp(42px,4.2vw,58px);font-weight:450;line-height:1.18;letter-spacing:-.06em}.inquiry-head h1 em{color:#65a13e;font-style:normal;font-weight:550}.inquiry-contact{grid-column:2;grid-row:2;align-self:center;padding-left:38px;border-left:1px solid #cdd8c9}.inquiry-contact .eyebrow{margin-bottom:8px;color:#1d281f;font-size:18px;font-weight:550;letter-spacing:-.02em}.inquiry-contact a{display:block;margin-bottom:10px;color:#65a13e;font-size:clamp(30px,3vw,46px);font-weight:600;letter-spacing:-.03em}.inquiry-contact>p:last-child{margin:0;color:#667168;font-size:16px;line-height:1.8}.inquiry-board{padding-top:54px;padding-bottom:110px}.board-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.board-top p{margin:0;color:#657067}.board-top b{color:#477627;font-size:22px}.board-write{padding:13px 22px;background:#477627;color:#fff;font-weight:700}.board-table{border-top:2px solid #273c2d;background:#fff}.board-row{display:grid;grid-template-columns:100px 1fr 110px;align-items:center;min-height:74px;padding:0 18px;border-bottom:1px solid #d7ded4}.board-row>span:first-child,.board-status{text-align:center;color:#7b857d;font-size:14px}.board-header{min-height:54px;background:#eef2eb;font-weight:700}.board-header>span{color:#27342b!important}.board-title{font-size:17px;letter-spacing:-.02em}.lock{display:inline-block;margin-right:12px;color:#6aa145;font-size:8px;vertical-align:2px}.board-status{color:#477627;font-weight:700}.board-pagination{display:flex;justify-content:center;gap:8px;margin-top:34px}.board-pagination button{width:40px;height:40px;border:1px solid #cad4c6;background:#fff;color:#667168;cursor:pointer}.board-pagination button.is-active{border-color:#477627;background:#477627;color:#fff}.site-header .main-nav a:last-child{white-space:nowrap}
@media(max-width:1180px){.site-header .main-nav{gap:18px}.site-header .main-nav a{font-size:15px}}
@media(max-width:760px){.inquiry-head{grid-template-columns:1fr;grid-template-rows:auto auto auto;padding-top:70px}.inquiry-head>div:first-child>.eyebrow{grid-column:1;grid-row:1}.inquiry-head h1{grid-column:1;grid-row:2}.inquiry-contact{grid-column:1;grid-row:3;margin-top:30px;padding:24px 0 0;border-left:0;border-top:1px solid #cdd8c9}.board-row{grid-template-columns:52px 1fr 62px;padding:0 8px}.board-title{font-size:15px}.board-status{font-size:12px}.lock{margin-right:7px}}
.inquiry-head h1{transform:none}
.inquiry-contact .eyebrow{font-family:"Pretendard Variable","Pretendard",sans-serif;font-size:26px;font-weight:450;letter-spacing:-.035em}
.inquiry-contact a{color:#65A13E}
.inquiry-head>div:first-child>.eyebrow{transform:translateY(49px)}
@media(max-width:760px){.inquiry-head>div:first-child>.eyebrow{transform:none}}
.board-write{border:0;cursor:pointer;font:inherit}.inquiry-composer{margin:0 0 34px;padding:34px;background:#fff;border:1px solid #cdd8c9}.composer-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.composer-head h2{margin:0;font-size:30px;font-weight:500}.composer-head>p{max-width:480px;margin:0;color:#667168}.inquiry-form{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 28px}.inquiry-form label{display:grid;gap:8px}.inquiry-form label>span{font-size:14px;font-weight:600}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;padding:13px 12px;border:1px solid #bdc9b9;background:#fff;font:inherit}.inquiry-form textarea{resize:vertical}.inquiry-form .full{grid-column:1/-1}.composer-actions{display:flex;align-items:center;justify-content:space-between}.composer-actions p{margin:0;color:#667168;font-size:13px}.composer-actions button{padding:14px 26px;border:0;background:#477627;color:#fff;font:inherit;font-weight:700;cursor:pointer}.composer-result{margin:20px 0 0;padding:14px;background:#eef4ea;color:#477627;font-weight:700}.inquiry-composer[hidden]{display:none}
@media(max-width:760px){.composer-head{display:block}.composer-head>p{margin-top:12px}.inquiry-form{grid-template-columns:1fr}.inquiry-form .full{grid-column:1}.composer-actions{align-items:flex-start;flex-direction:column;gap:14px}}

/* Visual quick-estimate experience */
.quote{grid-template-columns:1fr 1.05fr;gap:clamp(50px,7vw,110px);background:linear-gradient(135deg,#E7F1E1 0%,#F8FBF6 55%,#EDF5E8 100%)}
.estimate-preview{position:relative;margin:42px 0 34px;padding:26px 28px 24px;background:#fff;border:1px solid #D0DDC9;box-shadow:0 25px 55px -38px rgba(24,61,12,.65);transform:rotate(-1deg)}
.estimate-preview:before{content:"";position:absolute;left:0;top:0;width:7px;height:100%;background:#68A344}
.estimate-paper-head{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding-bottom:20px;border-bottom:2px solid #2C372F}
.estimate-paper-head>span{font:700 12px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.11em;color:#4B8130}
.estimate-paper-head>b{font-size:28px;letter-spacing:.28em}
.estimate-paper-head>small{justify-self:end;padding:4px 8px;border:1px solid #76A85A;color:#518234;font-size:10px}
.estimate-paper-meta{display:grid;grid-template-columns:72px 1fr 72px 1fr;border-bottom:1px solid #CFD7CC;font-size:12px}
.estimate-paper-meta span,.estimate-paper-meta strong{padding:12px 8px;border-right:1px solid #CFD7CC}
.estimate-paper-meta span{background:#F0F5ED;color:#637061}.estimate-paper-meta strong{font-weight:600}
.estimate-paper-table{margin-top:18px;border-top:1px solid #BFCABD;border-left:1px solid #BFCABD}
.estimate-row{display:grid;grid-template-columns:1.5fr 1fr .7fr}
.estimate-row span{padding:11px 9px;border-right:1px solid #BFCABD;border-bottom:1px solid #BFCABD;font-size:12px}
.estimate-row-head{background:#E8F1E3;font-weight:700;color:#41652F}
.estimate-paper-foot{display:flex;justify-content:space-between;align-items:end;gap:20px;padding-top:20px}
.estimate-paper-foot b{font-size:12px;color:#677267}.estimate-paper-foot span{font:700 13px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.08em}.estimate-paper-foot em{font-style:normal;color:#68A344}
.quote-form{align-self:start;padding:42px;background:rgba(255,255,255,.92);border:1px solid #D1DFC9;box-shadow:0 30px 70px -50px rgba(26,63,13,.72)}
.quote-form-head{display:flex;align-items:center;gap:10px;margin-bottom:10px;padding-bottom:22px;border-bottom:2px solid #2F3B33;position:relative}
.quote-form-head span{font-size:12px;font-weight:700;color:#548235;white-space:nowrap}.quote-form-head i{width:22px;height:1px;background:#B6C8AD}.quote-form-head b{margin-left:auto;padding:7px 10px;background:#6CA647;color:#fff;font-size:12px;white-space:nowrap}
.quote-form input,.quote-form select{min-height:48px;font-size:16px}.quote-form textarea{font-size:16px;background:#FAFCF9}.quote-form .btn{min-height:62px;font-size:18px;font-weight:700;background:#31592A;border-color:#31592A}
@media(max-width:960px){.quote{grid-template-columns:1fr}.estimate-preview{max-width:650px}.quote-form{padding:34px}}
@media(max-width:620px){.estimate-preview{padding:20px 16px;transform:none}.estimate-paper-head{grid-template-columns:1fr auto}.estimate-paper-head>small{display:none}.estimate-paper-head>b{font-size:23px}.estimate-paper-meta{grid-template-columns:66px 1fr}.estimate-paper-meta span:nth-of-type(2),.estimate-paper-meta strong:nth-of-type(2){display:none}.quote-form{padding:25px 20px}.quote-form-head{flex-wrap:wrap}.quote-form-head b{width:100%;margin:8px 0 0;text-align:center}}

/* Separate image-and-copy architectural explainers */
.design-explain{background:#fff;border-top:1px solid #DBE5D6}
.design-explain-row{display:grid;grid-template-columns:1.18fr .82fr;min-height:520px;border-bottom:1px solid #DBE5D6}
.design-explain-row.design-explain-reverse{grid-template-columns:.82fr 1.18fr}
.design-explain-reverse .design-explain-image{order:2}.design-explain-reverse .design-explain-copy{order:1}
.design-explain-image{min-height:520px;padding:clamp(22px,3vw,48px);background:#F4F6F2;overflow:hidden}
.design-explain-image img{object-fit:contain;filter:saturate(.9);transition:transform .7s}
.design-explain-row:hover .design-explain-image img{transform:scale(1.025)}
.design-explain-wide{background:linear-gradient(145deg,#EEF4EA,#FAFBF9)}
.design-explain-copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(42px,5vw,78px);overflow:hidden}
.design-explain-copy>span{position:absolute;right:clamp(28px,4vw,70px);top:clamp(38px,5vw,72px);font:300 78px/1 "Barun Helvetica",Helvetica,Arial,sans-serif;color:rgba(101,161,62,.18)}
.design-explain-copy h2{margin:0 0 23px;font-size:clamp(34px,3.3vw,52px);line-height:1.16;letter-spacing:-.055em}
.design-explain-copy h2 em{font-style:normal;color:#65A13E}
.design-explain-copy>p:not(.eyebrow){margin:0;color:#647068;font-size:17px;line-height:1.85}
.design-explain-copy ul{margin:35px 0 0;padding:0;list-style:none;border-top:1px solid #CDDCC6}
.design-explain-copy li{padding:14px 2px;border-bottom:1px solid #CDDCC6;font-size:15px;color:#3E4941}
.design-explain-copy li:before{content:"+";margin-right:9px;color:#65A13E;font-weight:700}
.design-explain-note{margin:0;padding:18px max(24px,calc((100vw - var(--max))/2 + 72px));background:#EDF5E8;color:#6C776F;font-size:12px}
@media(max-width:960px){.design-explain-row,.design-explain-row.design-explain-reverse{grid-template-columns:1fr}.design-explain-reverse .design-explain-image{order:1}.design-explain-reverse .design-explain-copy{order:2}.design-explain-image{min-height:500px}.design-explain-copy{min-height:590px;padding:72px 30px}}
@media(max-width:620px){.design-explain-image{min-height:360px;padding:18px}.design-explain-copy{min-height:560px}.design-explain-copy>span{font-size:58px}.design-explain-copy h2{font-size:40px}}

/* Trial: panoramic glass-partition hero */
.hero-wide{position:relative;display:block;max-width:none;min-height:760px;padding:0;overflow:hidden}
.hero-wide .hero-visual{position:absolute;inset:0;min-height:760px}
.hero-wide .hero-visual img{object-position:center center;filter:saturate(.78) contrast(1.01)}
.hero-wide .hero-visual:after{background:linear-gradient(90deg,rgba(247,249,245,.98) 0%,rgba(247,249,245,.92) 27%,rgba(247,249,245,.55) 48%,rgba(247,249,245,.05) 68%,rgba(18,25,21,.06) 100%)}
.hero-wide .hero-copy{position:relative;z-index:3;width:min(51%,760px);min-height:760px;margin-left:max(24px,calc((100vw - var(--max))/2 + 72px));padding:90px 30px 52px 0}
.hero-wide .hero-text{color:#4F5A52;text-shadow:0 1px 0 rgba(255,255,255,.7)}
.hero-wide .hero-meta{margin-top:58px;border-top-color:rgba(73,101,61,.28)}
.hero-wide .visual-caption{right:clamp(20px,4vw,72px);bottom:22px;text-shadow:0 1px 5px rgba(0,0,0,.55)}
@media(max-width:960px){.hero-wide{display:grid;grid-template-columns:1fr;min-height:0}.hero-wide .hero-copy{width:auto;min-height:0;margin:0;padding:72px 24px 55px;background:#F6F9F4}.hero-wide .hero-visual{position:relative;inset:auto;min-height:500px}.hero-wide .hero-visual:after{background:linear-gradient(0deg,rgba(18,25,21,.08),transparent 45%)}.hero-wide .hero-meta{margin-top:50px}}
@media(max-width:620px){.hero-wide .hero-copy{padding:62px 20px 48px}.hero-wide .hero-visual{min-height:340px}.hero-wide .hero-visual img{object-position:63% center}}

/* Customer-selectable construction products */
.site-header .brand-mark{display:block;width:54px;height:54px;border:0;border-radius:0;transform:none;overflow:visible;flex:0 0 54px}
.site-header .brand-mark:before,.site-header .brand-mark i{display:none}
.site-header .brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:620px){.site-header .brand-mark{width:43px;height:43px;flex-basis:43px}}

/* Customer-selectable construction products */
.products{position:relative;overflow:hidden;background:#fff}
.products:before{content:"PRODUCT";position:absolute;right:3%;top:34px;font:700 clamp(78px,11vw,170px) "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:-.07em;color:rgba(116,176,77,.055);pointer-events:none}
.products>.section-heading,.product-grid{position:relative;z-index:1}
.products h2 em{font-style:normal;color:#65A13E}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.product-card{display:grid;grid-template-columns:1.05fr .95fr;min-height:360px;border:1px solid #D8E4D2;background:#FAFCF8;overflow:hidden;transition:transform .28s,border-color .28s,box-shadow .28s}
.product-card-empty{visibility:hidden;pointer-events:none}
.product-card:hover{transform:translateY(-4px);border-color:#83B966;box-shadow:0 24px 55px -40px rgba(39,84,18,.7)}
.product-card-featured{min-height:500px;background:#F2F7EE}
.product-photo{overflow:hidden;min-height:100%}
.product-photo img{filter:saturate(.82);transition:transform .65s,filter .65s}
.product-card:hover .product-photo img{transform:scale(1.035);filter:saturate(1)}
.product-photo-tex img{object-position:56% center}
.product-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(26px,3.4vw,52px)}
.product-copy>span{font:400 14px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.13em;color:#5D9638}
.product-copy h3{margin:18px 0 14px;font-size:clamp(26px,2.3vw,38px);line-height:1.2;letter-spacing:-.045em}
.product-copy p{margin:0;color:#647068;font-size:16px;line-height:1.75}
.product-copy ul{margin:22px 0 0;padding:18px 0 0;width:100%;list-style:none;border-top:1px solid #D8E4D2;color:#536057;font-size:14px}
.product-copy li{display:inline-block;margin:0 14px 6px 0}.product-copy li:before{content:"+";margin-right:6px;color:#65A13E}
.product-quote{margin-top:auto;padding:13px 0 5px;border-bottom:1px solid #31592A;font-size:15px;font-weight:700;color:#31592A}
.product-quote:after{content:" →";margin-left:12px}
@media(max-width:1100px){.product-card{grid-template-columns:1fr}.product-photo{height:310px}.product-card-featured{min-height:0}}
@media(max-width:760px){.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:1fr}.product-photo{height:300px}.product-copy{min-height:300px}.products:before{display:none}}

/* Separate quick-estimate window */
.quote-launch{display:block;background:linear-gradient(135deg,#E7F1E1 0%,#F8FBF6 55%,#EDF5E8 100%)}
.quote-launch .quote-intro{max-width:980px;margin:0 auto}
.quote-launch-button{min-width:260px;margin-top:8px;background:#31592A;border-color:#31592A;font-size:17px;font-weight:700}
.quote-entry-dialog{width:min(1180px,calc(100% - 40px));max-width:1180px;max-height:calc(100vh - 48px);padding:0;border-radius:2px;overflow:auto;background:#F5F8F3}
.quote-entry-dialog::backdrop{background:rgba(11,15,13,.72);backdrop-filter:blur(4px)}
.quote-entry-close{position:sticky;display:block;margin:0 12px -46px auto;right:16px;top:8px;z-index:5;width:42px;height:42px;border:0;background:rgba(255,255,255,.92);font-size:31px;line-height:1;cursor:pointer;box-shadow:0 5px 20px rgba(0,0,0,.12)}
.quote-entry-layout{display:grid;grid-template-columns:.78fr 1.22fr;min-height:720px}
.quote-modal-intro{padding:72px 48px;background:#24352C;color:#fff}
.quote-modal-intro h2{margin:0 0 24px;font-size:clamp(36px,4vw,54px);line-height:1.16;letter-spacing:-.055em}
.quote-modal-intro h2 em{font-style:normal;color:#91C86D}
.quote-modal-intro>p:not(.eyebrow){color:rgba(255,255,255,.72);font-size:16px}
.quote-modal-intro ul{margin:42px 0 0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.22)}
.quote-modal-intro li{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.18);font-size:15px}
.quote-entry-dialog .quote-form{padding:68px 54px 42px;background:#fff}
@media(max-width:820px){.quote-entry-layout{grid-template-columns:1fr}.quote-modal-intro{padding:58px 26px 34px}.quote-modal-intro ul{display:none}.quote-entry-dialog .quote-form{padding:38px 24px}.quote-entry-close{margin-bottom:-46px}}
.quote-document-title{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;padding-bottom:22px;border-bottom:3px double #2F3B33;text-align:center}
.quote-document-title span{justify-self:start;font:700 12px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.14em;color:#548235}
.quote-document-title h3{margin:0;font-size:27px;letter-spacing:.28em;white-space:nowrap}
.quote-document-title b{justify-self:end;font-size:10px;letter-spacing:.12em;color:#879087}
.quote-notice{padding:18px 20px;background:#EDF5E8;border-left:4px solid #6CA647}
.quote-notice strong{display:block;margin-bottom:5px;font-size:16px;color:#31592A}
.quote-notice p{margin:0;font-size:13px;line-height:1.75;color:#59625C}
.quote-notice b{color:#263B2C}
#quoteDialog{width:min(920px,calc(100% - 36px));max-width:920px;max-height:calc(100vh - 30px);padding:46px 52px;overflow:auto;border-radius:3px;background:#F7F9F5;font-family:"Pretendard Variable","Pretendard",sans-serif}
#quoteDialog>h3{margin:0 0 28px;font-size:34px;font-weight:760;letter-spacing:-.055em}
#quoteDialog>.eyebrow{margin-bottom:8px;font-size:12px}
#quoteSummary{display:grid;gap:22px}
.quote-summary-brand{display:flex;align-items:center;justify-content:space-between;padding:14px 0;border-top:3px double #314536;border-bottom:1px solid #CBD6C8}
.quote-summary-brand b{font:700 12px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.14em;color:#477627}.quote-summary-brand span{font-size:14px;font-weight:650;color:#59645C}
.quote-total-panel{padding:30px 34px;background:linear-gradient(135deg,#274D35,#477627);color:#fff}.quote-total-panel>span{display:block;margin-bottom:8px;font-size:14px;font-weight:650;color:#BFE0AA}.quote-total-panel strong{display:block;font-size:clamp(30px,4vw,40px);font-weight:480;line-height:1.12;letter-spacing:-.045em}.quote-total-panel strong i{padding:0 .12em;font-style:normal;font-weight:220;color:#A5CC8D}.quote-total-panel small{display:block;margin-top:13px;font-size:13px;font-weight:350;color:rgba(255,255,255,.68)}
.quote-cost-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.quote-cost-grid article{display:grid;min-height:142px;padding:21px 23px;border:1px solid #D8E2D3;background:#fff}.quote-cost-grid article>span{font-size:14px;font-weight:650;color:#52733F}.quote-cost-grid article>strong{align-self:end;margin:14px 0 3px;font-size:22px;font-weight:500;letter-spacing:-.035em;color:#202721}.quote-cost-grid article>small{font-size:12px;color:#8A918B}.quote-cost-grid-single{grid-template-columns:1fr}.quote-cost-grid-single article{min-height:120px}
.quote-summary-section{padding:24px 26px;background:#fff;border:1px solid #E0E6DD}.quote-summary-section h4{margin:0 0 19px;padding-bottom:12px;border-bottom:2px solid #6EA34E;font-size:19px;font-weight:740;letter-spacing:-.035em}.quote-info-grid{display:grid;grid-template-columns:repeat(2,1fr);margin:0}.quote-info-grid>div{display:grid;grid-template-columns:112px 1fr;gap:12px;padding:10px 0;border-bottom:1px solid #EDF0EB}.quote-info-grid>div:nth-last-child(-n+2){border-bottom:0}.quote-info-grid dt{font-size:13px;font-weight:520;color:#858C87}.quote-info-grid dd{margin:0;font-size:14px;font-weight:620;color:#2F3731}.quote-extra-info p{display:grid;grid-template-columns:112px 1fr;gap:12px;margin:0;padding:10px 0;border-bottom:1px solid #EDF0EB;font-size:14px}.quote-extra-info p:last-child{border-bottom:0}.quote-extra-info b{font-weight:520;color:#858C87}.quote-extra-info span{font-weight:560;color:#343B36}.quote-summary-notice{padding:20px 22px;border-left:4px solid #78AD55;background:#EBF4E5}.quote-summary-notice b{display:block;margin-bottom:6px;font-size:15px;font-weight:720;color:#3D682C}.quote-summary-notice p{margin:0;font-size:13px;line-height:1.7;color:#687067}
@media(max-width:620px){.quote-document-title{grid-template-columns:1fr}.quote-document-title span,.quote-document-title b{display:none}.quote-document-title h3{font-size:22px;letter-spacing:.16em}.quote-notice{padding:15px}.quote-entry-dialog .quote-form{grid-template-columns:1fr}.quote-form .full{grid-column:1}.quote-entry-dialog{width:calc(100% - 20px);max-height:calc(100vh - 20px)}#quoteDialog{width:calc(100% - 18px);padding:34px 18px}#quoteDialog>h3{font-size:28px}.quote-total-panel{padding:24px 20px}.quote-total-panel strong{font-size:30px;font-weight:480}.quote-cost-grid{grid-template-columns:1fr}.quote-info-grid{grid-template-columns:1fr}.quote-info-grid>div:nth-last-child(2){border-bottom:1px solid #EDF0EB}.quote-summary-section{padding:21px 18px}.quote-info-grid>div,.quote-extra-info p{grid-template-columns:100px 1fr}}
.quote-entry-dialog{width:min(1440px,calc(100% - 36px));max-width:1440px;max-height:calc(100vh - 30px);background:#F2F5F0}
.quote-window-hero{display:grid;grid-template-columns:1.05fr .95fr;min-height:500px;background:#1F2E27;color:#fff}
.quote-window-image{min-height:500px;overflow:hidden;background:#DDE7D9}
.quote-window-image img{object-fit:cover;object-position:center}
.quote-window-copy{display:flex;flex-direction:column;justify-content:center;padding:70px 60px}
.quote-window-copy h2{margin:0 0 22px;font-size:clamp(40px,4.2vw,64px);line-height:1.12;letter-spacing:-.06em}
.quote-window-copy h2 em{display:block;font-style:normal;color:#91C86D}
.quote-window-copy>p:not(.eyebrow):not(.quote-process-note){max-width:620px;margin:0;color:rgba(255,255,255,.74);font-size:17px}
.quote-process-flow{display:grid;grid-template-columns:repeat(4,1fr);margin:38px 0 24px;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.22);border-left:1px solid rgba(255,255,255,.22)}
.quote-process-flow li{display:grid;gap:3px;min-height:128px;padding:18px 14px;border-right:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22)}
.quote-process-flow span{font-size:11px;color:#91C86D}.quote-process-flow b{align-self:end;font-size:16px}.quote-process-flow small{color:rgba(255,255,255,.58);font-size:11px}
.quote-process-note{margin:0;padding-left:14px;border-left:3px solid #91C86D;color:#fff;font-size:14px;font-weight:650}
.quote-entry-sheet{display:block;min-height:0;padding:64px max(34px,8vw);background:#F2F5F0}
.quote-entry-sheet .quote-form{max-width:1100px;margin:0 auto;padding:58px 64px;background:#fff;box-shadow:0 28px 75px -55px rgba(14,42,24,.55)}
@media(max-width:980px){.quote-window-hero{grid-template-columns:1fr}.quote-window-image{min-height:330px;height:330px}.quote-window-copy{padding:48px 30px}.quote-process-flow{grid-template-columns:repeat(2,1fr)}.quote-entry-sheet{padding:35px 18px}.quote-entry-sheet .quote-form{padding:42px 28px}}
@media(max-width:560px){.quote-window-image{height:250px;min-height:250px}.quote-window-copy h2{font-size:36px}.quote-process-flow{grid-template-columns:1fr 1fr}.quote-entry-sheet .quote-form{padding:34px 18px}}
.demolition-fields{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:22px;background:#F3F7F0;border:1px solid #D2E0CB}
.demolition-fields-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #CDDCC5}
.demolition-fields-head b{font-size:16px;color:#31592A}.demolition-fields-head span{font-size:12px;color:#6E776F}
@media(max-width:800px){.demolition-fields{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.demolition-fields{grid-template-columns:1fr}.demolition-fields-head{display:grid;gap:4px}}
.condition-diagram{display:grid;grid-template-columns:repeat(4,1fr);margin-top:30px;border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}
.condition-diagram>div{display:grid;grid-template-rows:64px auto auto;gap:3px;padding:14px 10px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2);text-align:center}
.condition-diagram svg{width:100%;height:64px;fill:none;stroke:#91C86D;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.condition-diagram b{font-size:14px}.condition-diagram small{font-size:10px;color:rgba(255,255,255,.57)}
.quote-window-copy .condition-diagram+.quote-process-flow{margin-top:22px}
@media(max-width:560px){.condition-diagram{grid-template-columns:1fr 1fr}}
.quote-anchor{display:block;width:0;height:0;overflow:hidden}
.quote-entry-sheet .quote-document-title h3{font-size:clamp(31px,3vw,42px);letter-spacing:.2em}
.quote-entry-sheet .quote-notice strong{font-size:20px}.quote-entry-sheet .quote-notice p{font-size:16px;line-height:1.8}
.quote-entry-sheet .quote-form-head span{font-size:15px}.quote-entry-sheet .quote-form-head b{font-size:14px}
.quote-entry-sheet .quote-form>label,.quote-entry-sheet .demolition-fields label{font-size:18px;font-weight:650}
.quote-entry-sheet .quote-form input,.quote-entry-sheet .quote-form select,.quote-entry-sheet .quote-form textarea{font-size:18px;min-height:54px}
.quote-entry-sheet .photo-field span,.quote-entry-sheet .form-help{font-size:15px}
.quote-entry-sheet .demolition-fields-head b{font-size:21px}.quote-entry-sheet .demolition-fields-head span{font-size:15px}
.quote-entry-sheet .quote-form>.btn{min-height:68px;font-size:21px}
@media(max-width:620px){.quote-entry-sheet .quote-document-title h3{font-size:26px;letter-spacing:.12em}.quote-entry-sheet .quote-form>label,.quote-entry-sheet .demolition-fields label{font-size:17px}}
.quote-window-copy .eyebrow{font-size:16px;letter-spacing:.2em}
.quote-window-copy>p:not(.eyebrow):not(.quote-process-note){font-size:20px;line-height:1.7}
.condition-diagram b{font-size:17px}.condition-diagram small{font-size:14px;line-height:1.45}
.quote-process-flow span{font-size:14px}.quote-process-flow b{font-size:20px}.quote-process-flow small{font-size:14px;line-height:1.45}
.quote-process-note{font-size:18px;line-height:1.65}
.quote-entry-sheet .quote-document-title span{font-size:15px}.quote-entry-sheet .quote-document-title>b{font-size:13px}
.quote-entry-sheet .quote-notice strong{font-size:22px}.quote-entry-sheet .quote-notice p{font-size:18px}
.quote-entry-sheet .quote-form-head span{font-size:17px}.quote-entry-sheet .quote-form-head b{font-size:16px}
.quote-entry-sheet .quote-form>label,.quote-entry-sheet .demolition-fields label{font-size:20px}
.quote-entry-sheet .quote-form input,.quote-entry-sheet .quote-form select,.quote-entry-sheet .quote-form textarea{font-size:20px;min-height:58px}
.quote-entry-sheet .photo-field span,.quote-entry-sheet .form-help{font-size:17px;line-height:1.7}
.quote-entry-sheet .demolition-fields-head b{font-size:23px}.quote-entry-sheet .demolition-fields-head span{font-size:17px}
.quote-entry-sheet .quote-form>.btn{font-size:23px}
@media(max-width:620px){.quote-window-copy .eyebrow{font-size:14px}.quote-window-copy>p:not(.eyebrow):not(.quote-process-note){font-size:18px}.condition-diagram b{font-size:15px}.condition-diagram small,.quote-process-flow small{font-size:12px}.quote-process-flow b{font-size:17px}.quote-entry-sheet .quote-form>label,.quote-entry-sheet .demolition-fields label{font-size:18px}.quote-entry-sheet .quote-form input,.quote-entry-sheet .quote-form select,.quote-entry-sheet .quote-form textarea{font-size:18px}}
.quote-entry-dialog,.quote-entry-dialog input,.quote-entry-dialog select,.quote-entry-dialog textarea,.quote-entry-dialog button{font-family:"Pretendard Variable","Pretendard","Noto Sans KR",sans-serif}
.quote-window-copy h2{font-weight:480}.quote-window-copy>p,.quote-process-note{font-weight:350}
.condition-diagram b,.quote-process-flow b{font-weight:450}.condition-diagram small,.quote-process-flow small{font-weight:300}
.quote-entry-sheet .quote-document-title h3{font-weight:500}
.quote-entry-sheet .quote-notice strong,.quote-entry-sheet .demolition-fields-head b{font-weight:500}
.quote-entry-sheet .quote-notice p,.quote-entry-sheet .demolition-fields-head span,.quote-entry-sheet .photo-field span,.quote-entry-sheet .form-help{font-weight:350}
.quote-entry-sheet .quote-form>label,.quote-entry-sheet .demolition-fields label{font-weight:400}
.quote-entry-sheet .quote-form input,.quote-entry-sheet .quote-form select,.quote-entry-sheet .quote-form textarea{font-weight:350}
.quote-entry-sheet .quote-form>.btn{font-weight:500}
.quote-entry-sheet input::placeholder,.quote-entry-sheet textarea::placeholder{color:#CDD2CE;opacity:1;font-weight:300}
.quote-entry-sheet .photo-field span,.quote-entry-sheet .demolition-fields-head span,.quote-entry-sheet .form-help{color:#929A94}
.quote-entry-sheet .photo-field input[type="file"]{min-height:42px;padding:6px 0;font-size:14px;font-weight:350;color:#858D87}
.quote-entry-sheet .photo-field input[type="file"]::file-selector-button{margin-right:12px;padding:8px 14px;border:1px solid #BFC8C1;background:#F5F7F4;color:#4D5650;font:400 14px "Pretendard Variable","Pretendard","Noto Sans KR",sans-serif;cursor:pointer}
.main-partition{display:grid;grid-template-columns:1.03fr .97fr;min-height:780px;background:#fff}
.main-partition-visual{position:relative;min-height:780px;overflow:hidden;background:#E9EEE7}
.main-partition-visual img{object-position:center}
.main-partition-visual:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(12,20,15,.58))}
.main-partition-visual>span{position:absolute;left:36px;bottom:28px;z-index:2;color:#fff;font:500 13px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.16em}
.main-partition-copy{display:flex;flex-direction:column;justify-content:center;padding:80px clamp(34px,7vw,115px)}
.main-partition-copy h2{margin:0 0 28px;font-size:clamp(48px,5.3vw,76px);font-weight:500;line-height:1.08;letter-spacing:-.06em}
.main-partition-copy h2 em{font-style:normal;color:#65A13E}
.main-partition-lead{max-width:690px;margin:0 0 36px;color:#5F6862;font-size:20px;font-weight:350;line-height:1.75}
.partition-specs{border-top:1px solid #CFD7D0}
.partition-specs>div{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid #DCE2DD}
.partition-specs b{font-size:16px;font-weight:500;color:#3E7040}.partition-specs span{font-size:17px;font-weight:350;color:#4F5752}
.partition-check{display:grid;gap:6px;margin:28px 0;padding:19px 22px;background:#EDF5E8;border-left:4px solid #6EA64D}
.partition-check strong{font-size:17px;font-weight:500;color:#31592A}.partition-check span{font-size:16px;font-weight:350;color:#5A655C}
.main-partition-copy>.btn{align-self:flex-start;min-width:250px;font-size:17px}
@media(max-width:960px){.main-partition{grid-template-columns:1fr}.main-partition-visual{min-height:520px}.main-partition-copy{padding:72px 28px}.partition-specs>div{grid-template-columns:130px 1fr}}
@media(max-width:560px){.main-partition-visual{min-height:380px}.main-partition-copy h2{font-size:46px}.main-partition-lead{font-size:18px}.partition-specs>div{grid-template-columns:1fr;gap:5px}.partition-specs span{font-size:16px}}
.service-menu-dialog{width:min(1180px,calc(100vw - 40px));max-width:1180px;max-height:calc(100vh - 40px);padding:0;overflow:auto;border:0;background:#f5f5f1;color:#17241d;box-shadow:0 30px 80px rgba(7,25,16,.28)}
.service-menu-dialog::backdrop{background:rgba(7,20,14,.72);backdrop-filter:blur(5px)}
.service-menu-close{position:sticky;top:18px;float:right;z-index:5;width:48px;height:48px;margin:18px 18px -66px 0;border:1px solid rgba(255,255,255,.45);border-radius:50%;background:rgba(18,44,32,.78);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.service-menu-head{padding:30px 48px 24px;background:#173f2c;color:#fff}
.service-menu-head .eyebrow{margin-bottom:8px;color:#8fd0aa}.service-menu-head h2{margin:4px 0 10px;font-size:clamp(31px,3.4vw,46px);font-weight:350;line-height:1.12;letter-spacing:-.045em}.service-menu-head h2 em{color:#94d3ad;font-style:normal}.service-menu-head>p:last-child{margin:0;color:rgba(255,255,255,.72);font-size:15px;font-weight:300}
.service-menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;padding:1px;background:#d6dcd8}.service-menu-grid>a{position:relative;display:block;min-height:260px;overflow:hidden;background:#12271d;color:#fff;text-decoration:none}.service-menu-grid img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.62;transition:transform .45s ease,opacity .35s ease}.service-menu-grid>a::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,24,15,.04) 20%,rgba(7,24,15,.88) 100%)}
.service-menu-grid span{position:absolute;z-index:2;left:26px;right:26px;bottom:24px;display:grid;gap:5px}.service-menu-grid small{font-size:12px;letter-spacing:.12em;color:#a7dabc}.service-menu-grid b{font-size:25px;font-weight:500;letter-spacing:-.035em}.service-menu-grid em{font-size:14px;font-style:normal;color:rgba(255,255,255,.7)}.service-menu-grid>a:hover img{transform:scale(1.045);opacity:.78}.service-menu-grid>a:hover em{color:#fff}
@media(max-width:900px){.service-menu-grid{grid-template-columns:repeat(2,1fr)}.service-menu-head{padding:28px 30px 22px}.service-menu-head h2{font-size:36px}}@media(max-width:560px){.service-menu-dialog{width:calc(100vw - 18px);max-height:calc(100vh - 18px)}.service-menu-head{padding:24px 20px 18px}.service-menu-head .eyebrow{font-size:10px}.service-menu-head h2{margin:3px 0 8px;font-size:28px;line-height:1.14}.service-menu-head>p:last-child{font-size:13px;line-height:1.55}.service-menu-grid{grid-template-columns:1fr 1fr}.service-menu-grid>a{min-height:190px}.service-menu-grid span{left:16px;right:12px;bottom:16px}.service-menu-grid small{font-size:10px}.service-menu-grid b{font-size:19px}.service-menu-grid em{font-size:12px}}
.quote-entry-dialog:not(.demolition-mode) .demolition-only{display:none!important}
.quote-submit-actions,.quote-summary-actions{display:flex;gap:12px}.quote-submit-actions .btn,.quote-summary-actions .btn{flex:1}.quote-summary-actions{margin-top:18px}.quote-summary-actions .btn:disabled{opacity:.78;cursor:default}
.quote-form .quote-calculate-btn{border:1px solid #31592a;background:#31592a;color:#fff;font-weight:700;box-shadow:0 8px 20px rgba(47,92,55,.14);transition:background-color .2s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.quote-form .quote-calculate-btn:hover{border-color:#4f8d2f;background:#4f8d2f;color:#fff;box-shadow:0 11px 24px rgba(47,92,55,.22);transform:translateY(-1px)}
.quote-form .quote-calculate-btn.is-ready{border-color:#4f8d2f;background:#4f8d2f;color:#fff;box-shadow:0 12px 26px rgba(55,112,39,.24)}
.quote-form .quote-calculate-btn.is-ready:hover{border-color:#376d24;background:#376d24;color:#fff;box-shadow:0 14px 30px rgba(45,94,32,.32);transform:translateY(-2px)}
.quote-calculate-btn:focus-visible{outline:3px solid rgba(79,141,47,.28);outline-offset:3px}
@media(max-width:560px){.quote-submit-actions,.quote-summary-actions{flex-direction:column}}
/* Restored section sequence from the confirmed rev=23 layout. */
main#top{display:flex;flex-direction:column}
main#top>.hero{order:1;width:100%;flex:none}
main#top>.service-ribbon{order:2}
main#top>#construction{order:3}
main#top>#details{order:4}
main#top>.intro{order:5}
main#top>#design-guide{order:6}
main#top>#products{order:7}
main#top>#spaces{order:8}
main#top>.performance{order:9}
main#top>#process{order:10}
main#top>#gallery{order:11}
main#top>#services{order:12}
main#top>.category-section{order:13}
main#top>dialog{order:99}

/* Mobile: product-first browsing and instant inquiry access */
.mobile-quick-nav{display:none}
.mobile-product-guide,.mobile-isometric-guide{display:none}
@media(max-width:620px){
  body{padding-bottom:64px}
  .mobile-quick-nav{position:fixed;left:10px;right:10px;bottom:9px;z-index:60;display:grid;grid-template-columns:1fr 1fr 1.25fr;overflow:hidden;border:1px solid #cbd8c5;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 12px 35px rgba(18,44,32,.22);backdrop-filter:blur(12px)}
  .mobile-quick-nav a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:0 6px;border-right:1px solid #dce5d8;font-size:12px;font-weight:700;letter-spacing:-.035em;white-space:nowrap}
  .mobile-quick-nav a:nth-child(2){background:#74b04d;color:#fff}
  .mobile-quick-nav a:last-child{border-right:0}
  main#top>.hero{order:1}
  main#top>#products{order:2}
  main#top>#design-guide{order:3}
  main#top>.category-section{order:4}
  main#top>.intro{order:5}
  main#top>#services,
  main#top>#spaces,
  main#top>#construction,
  main#top>#details,
  main#top>#process{display:none}
  .products.section-pad{padding-top:58px;padding-bottom:58px}
  .products>.section-heading{display:none}
  .products .section-heading h2{font-size:34px;line-height:1.15}
  .products .section-heading>p{font-size:14px;line-height:1.65}
  .product-grid{gap:14px}
  .product-grid .product-card:nth-child(3){order:1}
  .product-grid .product-card:nth-child(1){order:2}
  .product-grid .product-card:nth-child(4){order:3}
  .product-grid .product-card:nth-child(2){order:4}
  .product-grid .product-card:nth-child(5){order:5}
  .mobile-product-guide{display:grid;gap:6px;margin:0 0 24px;padding:18px;border-left:4px solid #74b04d;background:#f2f7ef}
  .mobile-product-guide b,.mobile-isometric-guide b{font-size:11px;letter-spacing:.1em;color:#5f983b}
  .mobile-product-guide strong,.mobile-isometric-guide strong{font-size:22px;line-height:1.3;letter-spacing:-.045em}
  .mobile-product-guide span{font-size:13px;line-height:1.6;color:#647068}
  .product-card{display:grid;grid-template-columns:42% 58%;min-height:190px}
  .product-photo{height:auto;min-height:190px}
  .product-copy{min-height:0;padding:18px 16px}
  .product-copy>span{font-size:10px;letter-spacing:.08em}
  .product-copy h3{margin:8px 0;font-size:21px}
  .product-copy p{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.55}
  .product-copy ul{display:none}
  .product-quote{width:100%;margin-top:auto;padding-top:13px;font-size:13px;font-weight:700;color:#4f8d2f}
  #design-guide{display:flex;gap:12px;overflow-x:auto;padding:42px 20px 30px;scroll-snap-type:x mandatory;background:#f4f7f2}
  #design-guide .mobile-isometric-guide{flex:0 0 72vw;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:22px;border-radius:12px;background:#eaf3e5;scroll-snap-align:start}
  #design-guide .design-explain-row{flex:0 0 86vw;display:block;min-height:0;overflow:hidden;border:1px solid #d7e1d2;border-radius:12px;background:#fff;scroll-snap-align:center}
  #design-guide .design-explain-image,#design-guide .design-explain-wide{height:235px;min-height:235px;padding:12px;order:1}
  #design-guide .design-explain-copy{min-height:0;padding:22px 20px 24px;order:2}
  #design-guide .design-explain-copy .eyebrow{margin-bottom:10px;font-size:10px}
  #design-guide .design-explain-copy>span{top:20px;right:18px;font-size:38px}
  #design-guide .design-explain-copy h2{margin:0 0 10px;padding-right:34px;font-size:25px;line-height:1.25}
  #design-guide .design-explain-copy>p:not(.eyebrow){display:-webkit-box;overflow:hidden;-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13px;line-height:1.65}
  #design-guide .design-explain-copy ul{display:none}
  #design-guide .design-explain-note{flex:0 0 72vw;display:flex;align-items:center;padding:22px;border-radius:12px;font-size:11px;scroll-snap-align:center}
  .quote-entry-dialog .quote-window-hero{display:none}
  .quote-entry-dialog .quote-entry-layout{padding-top:18px}
  .quote-entry-dialog .quote-form>*:not(.quote-document-title):not(.quote-notice):not(.quote-form-head){order:10}
  .quote-entry-dialog .quote-form label:has([name="business"]){order:1}
  .quote-entry-dialog .quote-form label:has([name="area"]){order:2}
  .quote-entry-dialog .quote-form label:has([name="type"]){order:3}
  .quote-entry-dialog .quote-form label:has([name="business"]),
  .quote-entry-dialog .quote-form label:has([name="area"]),
  .quote-entry-dialog .quote-form label:has([name="type"]){padding:14px;border:1px solid #cfe0c7;border-radius:9px;background:#f5f9f2;font-weight:700}
  .quote-entry-dialog .quote-document-title{order:-3}
  .quote-entry-dialog .quote-notice{order:-2}
  .quote-entry-dialog .quote-form-head{order:-1}
  .category-mobile-quick a:first-child{font-size:11px}
  .catalog-card-copy .catalog-quote-btn{margin-top:16px;min-height:52px;border-radius:6px;background:#26332b;color:#fff;font-weight:700}
}

/* Construction gallery */
.portfolio-page{background:#fff}.portfolio-hero{padding-top:110px;padding-bottom:64px;background:#f3f6f0}.portfolio-hero-row{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.7fr);gap:8vw;align-items:end}.portfolio-hero h1{margin:0;font-size:clamp(46px,5.5vw,78px);font-weight:430;line-height:1.08;letter-spacing:-.065em}.portfolio-hero h1 em,.portfolio-heading h2 em{color:#65a13e;font-style:normal}.portfolio-hero-row>p{max-width:600px;margin:0;color:#5e6962;font-size:18px;line-height:1.85}.portfolio-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:48px}.portfolio-jump a{padding:11px 18px;border:1px solid #bfcbb9;background:#fff;font-size:14px;font-weight:650}.portfolio-jump a:hover{border-color:#65a13e;color:#477627}.portfolio-section{padding-top:96px;padding-bottom:110px}.portfolio-soft{background:#f5f7f3}.portfolio-dark{background:#1e2521;color:#fff}.portfolio-heading{display:grid;grid-template-columns:1fr minmax(300px,.7fr);gap:8vw;align-items:end;margin-bottom:40px}.portfolio-heading h2{margin:0;font-size:clamp(38px,4vw,58px);font-weight:440;line-height:1.15;letter-spacing:-.055em}.portfolio-heading>p{max-width:560px;margin:0;color:#69736d;font-size:16px;line-height:1.8}.portfolio-dark .portfolio-heading>p{color:#b7c0ba}.portfolio-dark .eyebrow{color:#a7c696}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:290px;gap:12px}.portfolio-grid figure{position:relative;min-width:0;margin:0;overflow:hidden;background:#dfe5dc}.portfolio-grid figure:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(10,16,12,.78))}.portfolio-grid img{transition:transform .55s ease,filter .55s ease;filter:saturate(.78)}.portfolio-grid figure:hover img{transform:scale(1.035);filter:saturate(1)}.portfolio-wide{grid-column:span 2}.portfolio-tall{grid-row:span 2}.portfolio-grid figcaption{position:absolute;left:20px;right:20px;bottom:17px;z-index:2;color:#fff}.portfolio-grid figcaption b{display:block;font-size:18px;font-weight:650;letter-spacing:-.025em}.portfolio-grid figcaption span{font-size:12px;letter-spacing:.08em;opacity:.72}.portfolio-process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio-cta{display:flex;align-items:end;justify-content:space-between;gap:40px;background:#eef4e9}.portfolio-cta h2{margin:0 0 12px;font-size:clamp(36px,4vw,58px);letter-spacing:-.055em}.portfolio-cta p:not(.eyebrow){margin:0;color:#637067;font-size:17px}.portfolio-cta .btn{flex:0 0 auto}.footer-full{display:block;padding:0;border-top:0}
@media(max-width:1000px){.portfolio-grid,.portfolio-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-wide{grid-column:span 2}.portfolio-hero-row,.portfolio-heading{grid-template-columns:1fr;gap:24px}.portfolio-heading>p{max-width:700px}}
@media(max-width:620px){.hero-actions{display:grid;grid-template-columns:1fr}.portfolio-hero{padding-top:72px;padding-bottom:46px}.portfolio-hero h1{font-size:42px}.portfolio-hero-row>p{font-size:16px}.portfolio-jump{display:grid;grid-template-columns:1fr 1fr;margin-top:34px}.portfolio-jump a{text-align:center;padding-inline:8px}.portfolio-section{padding-top:72px;padding-bottom:76px}.portfolio-heading{margin-bottom:28px}.portfolio-heading h2{font-size:34px}.portfolio-grid,.portfolio-process-grid{grid-template-columns:1fr;grid-auto-rows:310px;gap:8px}.portfolio-wide,.portfolio-tall{grid-column:auto;grid-row:auto}.portfolio-grid figcaption b{font-size:17px}.portfolio-cta{display:block}.portfolio-cta .btn{width:100%;margin-top:28px}.mobile-quick-nav{overflow-x:auto}.mobile-quick-nav a{white-space:nowrap}}

/* Gallery image viewer */
.portfolio-grid figure{cursor:zoom-in}.portfolio-grid figure:focus-visible{outline:3px solid #65a13e;outline-offset:3px}.gallery-lightbox{width:min(1180px,calc(100% - 34px));max-width:none;padding:0;border:0;background:#101512;color:#fff;box-shadow:0 26px 100px rgba(0,0,0,.46)}.gallery-lightbox::backdrop{background:rgba(5,9,7,.9)}.gallery-lightbox figure{margin:0}.gallery-lightbox img{width:100%;height:min(76vh,820px);object-fit:contain;background:#0b0f0d}.gallery-lightbox figcaption{display:flex;justify-content:space-between;gap:20px;padding:18px 62px 20px 22px}.gallery-lightbox figcaption b{font-size:18px}.gallery-lightbox figcaption span{color:#a8b4ac;font-size:14px}.gallery-lightbox-close,.gallery-lightbox-nav{position:absolute;z-index:3;border:0;background:rgba(12,18,14,.74);color:#fff;cursor:pointer}.gallery-lightbox-close{top:12px;right:12px;width:42px;height:42px;font-size:31px;line-height:1}.gallery-lightbox-nav{top:50%;width:48px;height:70px;transform:translateY(-50%);font-size:42px}.gallery-lightbox-prev{left:12px}.gallery-lightbox-next{right:12px}
@media(max-width:620px){.gallery-lightbox{width:calc(100% - 18px)}.gallery-lightbox img{height:68vh}.gallery-lightbox figcaption{display:block;padding:15px 52px 17px 16px}.gallery-lightbox figcaption span{display:block;margin-top:3px}.gallery-lightbox-nav{width:40px;height:58px;font-size:34px}.gallery-lightbox-prev{left:4px}.gallery-lightbox-next{right:4px}}

/* Product-linked system gallery */
.portfolio-disclaimer{margin:34px 0 0;color:#778078;font-size:13px;line-height:1.7}.portfolio-browser{padding-top:86px;padding-bottom:110px}.portfolio-filters{position:sticky;top:80px;z-index:12;display:flex;flex-wrap:wrap;gap:8px;margin:0 0 34px;padding:14px;background:rgba(255,255,255,.94);border:1px solid #dce5d7;box-shadow:0 10px 28px rgba(28,48,35,.07);backdrop-filter:blur(12px)}.portfolio-filters button{min-height:44px;padding:0 17px;border:1px solid #cad7c4;background:#fff;color:#354039;font:600 14px "Noto Sans KR",Arial,sans-serif;cursor:pointer}.portfolio-filters button:hover,.portfolio-filters button.is-active{border-color:#65a13e;background:#65a13e;color:#fff}.portfolio-system-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:auto;gap:22px}.portfolio-system-grid figure{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce4d8;background:#fff;box-shadow:0 12px 34px rgba(29,47,35,.07)}.portfolio-system-grid figure[hidden]{display:none!important}.portfolio-system-grid figure:after{display:none}.portfolio-media{position:relative;height:300px;overflow:hidden;background:#e4e8e2;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.portfolio-media:before{content:"GREEN HOUSING · 공간 적용 예시";position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%) rotate(-18deg);width:max-content;color:rgba(255,255,255,.64);font:700 14px/1 "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.13em;text-shadow:0 1px 4px rgba(0,0,0,.34);pointer-events:none}.portfolio-media img,.gallery-lightbox-media img{pointer-events:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.portfolio-system-grid figcaption{position:static;display:flex;flex:1;flex-direction:column;padding:18px 19px 20px;color:#1d251f}.portfolio-system-grid figcaption>div{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.portfolio-system-grid figcaption strong{color:#4f872f;font-size:15px}.portfolio-system-grid figcaption small{padding:4px 7px;background:#eff5eb;color:#45613b;font:700 11px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.06em}.portfolio-system-grid figcaption b{font-size:20px}.portfolio-system-grid figcaption span{margin-top:4px;color:#758078;font-size:13px;letter-spacing:0;opacity:1}.portfolio-result{margin:30px 0 0;text-align:right;color:#6a756d;font-size:14px}.portfolio-result b{color:#4f872f;font-size:18px}.gallery-lightbox-media{position:relative;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.gallery-lightbox-media:after{content:attr(data-watermark);position:absolute;left:50%;top:50%;z-index:2;transform:translate(-50%,-50%) rotate(-18deg);width:max-content;color:rgba(255,255,255,.6);font:700 clamp(13px,2vw,21px)/1 "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.12em;text-shadow:0 2px 7px rgba(0,0,0,.55);pointer-events:none}.gallery-lightbox figcaption{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center}.gallery-lightbox figcaption>div{display:grid;min-width:130px}.gallery-lightbox figcaption strong{color:#a9db8b;font-size:16px}.gallery-lightbox figcaption small{color:#7f9687;font:700 11px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.08em}.gallery-lightbox figcaption b{padding-left:22px}.gallery-lightbox figcaption span{text-align:right}
@media(max-width:1000px){.portfolio-filters{top:76px}.portfolio-system-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-media{height:280px}}
@media(max-width:620px){.portfolio-browser{padding-top:58px;padding-bottom:76px}.portfolio-filters{top:68px;flex-wrap:nowrap;overflow-x:auto;margin-right:-20px;margin-left:-20px;padding:11px 20px;border-right:0;border-left:0}.portfolio-filters button{flex:0 0 auto;min-height:42px;padding-inline:14px}.portfolio-system-grid{grid-template-columns:1fr;gap:14px}.portfolio-media{height:270px}.portfolio-system-grid figcaption{padding:15px 16px 17px}.portfolio-system-grid figcaption b{font-size:18px}.portfolio-result{text-align:left}.gallery-lightbox figcaption{grid-template-columns:1fr}.gallery-lightbox figcaption b{padding:7px 0 0}.gallery-lightbox figcaption span{text-align:left}.portfolio-media:before{font-size:11px}}

.portfolio-hero-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px}.portfolio-hero-top .eyebrow{margin:0}.portfolio-national-badge{display:inline-flex;align-items:center;min-height:38px;padding:0 15px;border:1px solid #65a13e;background:#fff;color:#4f872f;font-size:13px;font-weight:750}.portfolio-filters{scrollbar-width:none}.portfolio-filters::-webkit-scrollbar{display:none}.portfolio-proof{display:grid;grid-template-columns:1.45fr repeat(4,1fr);border-top:1px solid #dce5d7;border-bottom:1px solid #dce5d7;background:#fff}.portfolio-proof header,.portfolio-proof>div{min-height:180px;padding:30px;border-right:1px solid #dce5d7}.portfolio-proof header{display:flex;flex-direction:column;justify-content:center;padding-left:max(24px,calc((100vw - var(--max))/2 + 72px));background:#26342c;color:#fff}.portfolio-proof header p{margin:0 0 13px;color:#9bc982;font:650 11px "Barun Helvetica",Helvetica,Arial,sans-serif;letter-spacing:.15em}.portfolio-proof header h2{margin:0;font-size:clamp(25px,2.3vw,38px);font-weight:470;line-height:1.22;letter-spacing:-.045em}.portfolio-proof header h2 em{display:block;color:#91c86d;font-style:normal}.portfolio-proof>div{display:flex;flex-direction:column;justify-content:center}.portfolio-proof>div:last-child{border-right:0}.portfolio-proof span{margin-bottom:23px;color:#65a13e;font:700 12px "Barun Helvetica",Helvetica,Arial,sans-serif}.portfolio-proof b{font-size:18px}.portfolio-proof small{margin-top:5px;color:#778078;font-size:12px}.portfolio-nationwide{display:grid;grid-template-columns:1.05fr .95fr;gap:9vw;align-items:center;background:#1f2a24;color:#fff}.portfolio-nationwide h2{margin:0 0 24px;font-size:clamp(42px,5vw,72px);font-weight:450;line-height:1.12;letter-spacing:-.06em}.portfolio-nationwide h2 em{display:block;color:#91c86d;font-style:normal}.portfolio-nationwide-copy>p:not(.eyebrow){max-width:680px;margin:0;color:#c3cec6;font-size:17px;line-height:1.85}.portfolio-nationwide-area{padding:38px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04)}.portfolio-nationwide-area>b{font-size:24px}.portfolio-nationwide-area ul{display:grid;grid-template-columns:1fr 1fr;margin:26px 0;padding:0;list-style:none;border-top:1px solid rgba(255,255,255,.18)}.portfolio-nationwide-area li{padding:13px 3px;border-bottom:1px solid rgba(255,255,255,.18);color:#e1e9e3}.portfolio-nationwide-area small{color:#9caaa1;line-height:1.7}.portfolio-mobile-cta{display:none}
@media(max-width:1100px){.portfolio-proof{grid-template-columns:repeat(4,1fr)}.portfolio-proof header{grid-column:1/-1;min-height:150px;padding:34px 28px}.portfolio-proof header h2 em{display:inline}.portfolio-nationwide{grid-template-columns:1fr;gap:48px}}
@media(max-width:620px){.portfolio-hero-top{align-items:flex-start;flex-direction:column;margin-bottom:20px}.portfolio-national-badge{min-height:34px}.portfolio-proof{grid-template-columns:1fr 1fr}.portfolio-proof header{min-height:138px}.portfolio-proof header h2{font-size:28px}.portfolio-proof header h2 em{display:block}.portfolio-proof>div{min-height:145px;padding:22px 18px}.portfolio-proof>div:nth-of-type(2n){border-right:0}.portfolio-proof span{margin-bottom:16px}.portfolio-proof b{font-size:16px}.portfolio-nationwide{padding-top:72px;padding-bottom:78px}.portfolio-nationwide h2{font-size:44px}.portfolio-nationwide-area{padding:25px 20px}.portfolio-nationwide-area ul{grid-template-columns:1fr}.portfolio-mobile-cta{position:fixed;left:10px;right:10px;bottom:10px;z-index:30;display:grid;grid-template-columns:.8fr 1.2fr;overflow:hidden;border:1px solid rgba(255,255,255,.3);box-shadow:0 12px 38px rgba(0,0,0,.3)}.portfolio-mobile-cta a{display:flex;align-items:center;justify-content:center;min-height:54px;background:#26342c;color:#fff;font-size:14px;font-weight:750}.portfolio-mobile-cta a:last-child{background:#65a13e}.portfolio-page{padding-bottom:66px}}

/* Editorial catalogue rhythm */
.portfolio-system-grid figure:nth-child(1),.portfolio-system-grid figure:nth-child(8),.portfolio-system-grid figure:nth-child(14){grid-column:span 2}.portfolio-system-grid figure:nth-child(1) .portfolio-media,.portfolio-system-grid figure:nth-child(8) .portfolio-media,.portfolio-system-grid figure:nth-child(14) .portfolio-media{height:420px}.portfolio-system-grid figure:nth-child(1) figcaption,.portfolio-system-grid figure:nth-child(8) figcaption,.portfolio-system-grid figure:nth-child(14) figcaption{padding:22px 24px 24px}.portfolio-system-grid figure:nth-child(1) figcaption b,.portfolio-system-grid figure:nth-child(8) figcaption b,.portfolio-system-grid figure:nth-child(14) figcaption b{font-size:24px}.portfolio-system-grid figure{transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s cubic-bezier(.2,.8,.2,1)}.portfolio-system-grid figure:hover{transform:translateY(-5px);box-shadow:0 22px 46px rgba(29,47,35,.13)}

/* Smooth Apple-like image viewer */
.gallery-lightbox[open]{animation:gallery-open .32s cubic-bezier(.2,.8,.2,1) both}.gallery-lightbox-media{height:min(76vh,820px);overflow:hidden;touch-action:none;cursor:zoom-in;background:#0b0f0d}.gallery-lightbox-media.is-magnified{cursor:grab}.gallery-lightbox-media.is-magnified:active{cursor:grabbing}.gallery-lightbox-media img{height:100%;transform-origin:center center;will-change:transform}.gallery-lightbox-media img.is-zooming{transition:transform .48s cubic-bezier(.18,.82,.25,1)}.gallery-zoom-controls{position:absolute;right:14px;bottom:76px;z-index:5;display:flex;align-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:rgba(13,19,15,.78);box-shadow:0 8px 25px rgba(0,0,0,.3);backdrop-filter:blur(14px)}.gallery-zoom-controls button,.gallery-zoom-controls output{display:flex;align-items:center;justify-content:center;height:40px;border:0;background:transparent;color:#fff}.gallery-zoom-controls button{min-width:42px;padding:0 12px;font-size:20px;cursor:pointer}.gallery-zoom-controls button:last-child{border-left:1px solid rgba(255,255,255,.14);font-size:11px}.gallery-zoom-controls output{min-width:56px;color:#b9c7bd;font-size:11px}.gallery-zoom-controls button:hover{background:rgba(255,255,255,.1)}@keyframes gallery-open{from{opacity:0;transform:translateY(18px) scale(.975)}to{opacity:1;transform:none}}
@media(max-width:1000px){.portfolio-system-grid figure:nth-child(1),.portfolio-system-grid figure:nth-child(8),.portfolio-system-grid figure:nth-child(14){grid-column:span 2}}
@media(max-width:620px){.portfolio-system-grid figure:nth-child(1),.portfolio-system-grid figure:nth-child(8),.portfolio-system-grid figure:nth-child(14){grid-column:auto}.portfolio-system-grid figure:nth-child(1) .portfolio-media,.portfolio-system-grid figure:nth-child(8) .portfolio-media,.portfolio-system-grid figure:nth-child(14) .portfolio-media{height:300px}.portfolio-system-grid figure:nth-child(1) figcaption,.portfolio-system-grid figure:nth-child(8) figcaption,.portfolio-system-grid figure:nth-child(14) figcaption{padding:16px}.portfolio-system-grid figure:nth-child(1) figcaption b,.portfolio-system-grid figure:nth-child(8) figcaption b,.portfolio-system-grid figure:nth-child(14) figcaption b{font-size:19px}.gallery-lightbox-media{height:68vh}.gallery-zoom-controls{right:8px;bottom:118px}.gallery-zoom-controls button{min-width:38px;padding:0 9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portfolio-system-grid figure,.gallery-lightbox-media img.is-zooming,.gallery-lightbox[open]{transition:none;animation:none}}
.gallery-reveal{opacity:0;transform:translateY(24px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}.gallery-reveal.is-visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.gallery-reveal{opacity:1;transform:none;transition:none}}

/* Gallery catalogue refinement */
.portfolio-hero{
  position:relative;
  overflow:hidden;
  background-color:#f4f6f0;
  background-image:
    linear-gradient(135deg,rgba(101,161,62,.055) 25%,transparent 25%),
    linear-gradient(225deg,rgba(101,161,62,.055) 25%,transparent 25%),
    linear-gradient(45deg,rgba(38,52,44,.035) 25%,transparent 25%),
    linear-gradient(315deg,rgba(38,52,44,.035) 25%,#f4f6f0 25%);
  background-position:20px 0,20px 0,0 0,0 0;
  background-size:40px 40px;
}
.portfolio-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(244,246,240,.98) 0%,rgba(244,246,240,.9) 58%,rgba(244,246,240,.56) 100%);pointer-events:none}
.portfolio-hero>*{position:relative;z-index:1}
.portfolio-hero h1{font-size:clamp(40px,4.35vw,62px);line-height:1.13;letter-spacing:-.055em}
.portfolio-national-badge{border-radius:999px;box-shadow:0 7px 20px rgba(54,92,41,.08)}
.portfolio-jump a,.portfolio-filters button{border-radius:999px;transition:background-color .22s ease,color .22s ease,border-color .22s ease,transform .22s ease,box-shadow .22s ease}
.portfolio-jump a:hover,.portfolio-filters button:hover{transform:translateY(-2px);box-shadow:0 9px 20px rgba(42,67,50,.11)}
.portfolio-filters{border-radius:18px}
.portfolio-filters button.is-active{box-shadow:0 8px 18px rgba(70,119,43,.2)}
.portfolio-cta .btn{border-radius:999px;background:#26342c;color:#fff;border-color:#26342c;box-shadow:0 10px 24px rgba(24,43,31,.18);transition:transform .22s ease,background-color .22s ease,box-shadow .22s ease}
.portfolio-cta .btn:hover{transform:translateY(-2px);background:#65a13e;border-color:#65a13e;box-shadow:0 13px 28px rgba(75,126,45,.24)}
@media(max-width:620px){.portfolio-hero h1{font-size:35px;line-height:1.17}.portfolio-hero{padding-top:62px}.portfolio-filters{border-radius:0}}
