:root{--background:#fff;--foreground:#252525;--muted:#69716d;--line:#e4eadf;--panel:#fff;--green:#6b9b2f;--green-dark:#3d6f22;--orange:#f28a2e;--blue:#3977f3;--charcoal:#292c29;--soft-green:#f3fae9;--soft-blue:#f4f8ff}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{min-height:100vh;color:var(--foreground);background:var(--background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Apple SD Gothic Neo,Noto Sans KR,Segoe UI,Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}@keyframes fade-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes image-reveal{0%{opacity:0;filter:saturate(.78);transform:scale(1.04)}to{opacity:1;filter:saturate();transform:scale(1)}}@keyframes band-slide{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.site-header{z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #6b9b2f2e;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;min-height:82px;padding:0 42px;display:grid;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:238px;display:inline-flex}.brand-label{color:#fff;background:var(--green);justify-content:center;align-items:center;min-height:32px;padding:0 9px;font-size:.82rem;font-weight:850;display:inline-flex}.brand strong{color:var(--green-dark);letter-spacing:0;font-size:1.45rem;line-height:1;display:block}.brand small{color:#545a50;margin-top:4px;font-weight:700;display:block}.nav{color:#384135;justify-content:center;gap:28px;font-size:.96rem;font-weight:750;display:flex}.header-call{color:#fff;background:var(--orange);white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;min-height:44px;padding:0 18px;font-size:1.08rem;font-weight:850;display:inline-flex}.hero{background:linear-gradient(90deg,#fff 0%,#fffffff7 48%,#f3fae9b8 100%),radial-gradient(circle at 12% 10%,#6b9b2f21,#0000 34%);grid-template-columns:minmax(0,.85fr) minmax(460px,1fr);align-items:center;gap:52px;min-height:calc(100vh - 120px);padding:76px 52px 46px;display:grid}.hero-copy-wrap{max-width:680px;animation:.72s both fade-up}.eyebrow{color:var(--green-dark);letter-spacing:0;text-transform:uppercase;margin-bottom:16px;font-size:.78rem;font-weight:900}h1,h2,h3{color:var(--charcoal);letter-spacing:0;line-height:1.1}h1{font-size:clamp(2.8rem,5.7vw,5.6rem);font-weight:900}h2{font-size:clamp(2rem,4vw,3.8rem);font-weight:880}h3{font-size:1.28rem;font-weight:840}.hero-copy{color:#495248;max-width:590px;margin-top:24px;font-size:1.14rem;line-height:1.78}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.primary-button,.secondary-button,.contact-card a{border-radius:6px;justify-content:center;align-items:center;min-height:52px;font-weight:850;transition:transform .18s,box-shadow .18s,background-color .18s;display:inline-flex}.primary-button,.contact-card a{color:#fff;background:var(--green-dark);min-width:152px;box-shadow:0 16px 32px #3d6f2233}.secondary-button{border:1px solid var(--line);background:#fff;min-width:152px}.primary-button:hover,.secondary-button:hover,.contact-card a:hover{transform:translateY(-2px)}.primary-button:hover,.contact-card a:hover{box-shadow:0 20px 38px #3d6f2242}.hero-showcase{grid-template-columns:minmax(0,1fr) 180px;align-items:stretch;gap:14px;animation:.82s .12s both image-reveal;display:grid}.hero-showcase img,.service-card img,.case-card img{object-fit:cover;background:#d8ddd4;width:100%;transition:transform .42s,filter .26s}.hero-main-image{border-radius:8px;height:min(58vh,540px);min-height:390px;box-shadow:0 24px 70px #292c2929}.hero-stack{gap:14px;display:grid}.hero-stack img{border-radius:8px;height:100%;min-height:0}.quick-band{background:var(--soft-green);border-block:1px solid #6b9b2f2e;grid-template-columns:repeat(4,1fr);display:grid}.quick-band span{min-height:86px;color:var(--green-dark);border-right:1px solid #6b9b2f29;place-items:center;padding:18px;font-size:1.1rem;font-weight:850;animation:.52s both band-slide;display:grid}.quick-band span:nth-child(2){animation-delay:70ms}.quick-band span:nth-child(3){animation-delay:.14s}.quick-band span:nth-child(4){animation-delay:.21s}.quick-band span:last-child{border-right:0}.section,.company-section,.case-section,.contact-section{width:min(1180px,100% - 48px);margin:0 auto;padding:104px 0}.section{background:#fff;width:100%;padding-inline:max(24px,50vw - 590px)}.company-section,.contact-section{border-top:1px solid var(--line);grid-template-columns:minmax(280px,.72fr) minmax(0,1fr);align-items:start;gap:62px;display:grid}.company-copy p,.section-heading p:last-child,.contact-card p,.service-card p,.case-card p{color:var(--muted);line-height:1.72}.company-copy dl{gap:10px;margin-top:28px;display:grid}.company-copy dl div{border:1px solid var(--line);background:#fff;border-radius:6px;grid-template-columns:132px 1fr;gap:18px;padding:16px 18px;display:grid}.company-copy dt{color:var(--green-dark);font-weight:850}.company-copy dd{color:#3f473c}.section-heading{grid-template-columns:minmax(0,.8fr) minmax(300px,.52fr);align-items:end;gap:54px;margin-bottom:40px;display:grid}.service-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.service-card,.case-card,.contact-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:hidden;box-shadow:0 14px 34px #3246360f}.service-card,.case-card{animation:.62s both fade-up}.service-card:nth-child(2),.case-card:nth-child(2),.case-card:nth-child(6),.case-card:nth-child(10){animation-delay:60ms}.service-card:nth-child(3),.case-card:nth-child(3),.case-card:nth-child(7),.case-card:nth-child(11){animation-delay:.12s}.service-card:nth-child(4),.case-card:nth-child(4),.case-card:nth-child(8),.case-card:nth-child(12){animation-delay:.18s}.service-card:nth-child(5),.case-card:nth-child(5),.case-card:nth-child(9){animation-delay:.24s}.service-card:nth-child(6){animation-delay:.3s}.service-card img{height:218px}.service-card:hover img,.case-card:hover img{filter:saturate(1.08)contrast(1.02);transform:scale(1.045)}.service-card div{min-height:178px;padding:24px}.service-card p{margin-top:14px}.case-section{border-block:1px solid var(--line);background:linear-gradient(#f8fbf5 0%,#fff 100%);width:100%;padding:112px max(24px,50vw - 590px);overflow:hidden}.case-section .section-heading{align-items:start}.case-section .eyebrow{color:var(--green-dark)}.case-section h2,.case-section .section-heading p:last-child{color:var(--charcoal)}.case-section .section-heading p:last-child{color:var(--muted)}.case-tabs{flex-wrap:wrap;gap:10px;margin:-12px 0 34px;display:flex}.case-tabs button{border:1px solid var(--line);color:#4d5951;cursor:default;background:#fff;border-radius:999px;min-height:42px;padding:0 18px;font-weight:800}.case-tabs button:first-child{border-color:var(--green);color:#fff;background:var(--green)}.case-grid{grid-template-columns:repeat(4,1fr);gap:18px;display:grid}.case-card{border:1px solid var(--line);background:#fff;min-height:330px;transition:transform .18s,box-shadow .18s;position:relative}.case-card:hover{transform:translateY(-6px);box-shadow:0 24px 54px #32463624}.case-card img{opacity:1;height:220px;position:static}.case-card div{background:#fff;gap:10px;min-height:155px;padding:22px;display:grid;position:relative}.case-card span{width:fit-content;color:var(--green-dark);background:var(--soft-green);border-radius:999px;padding:7px 10px;font-size:.78rem;font-weight:900}.case-card h3{color:var(--charcoal);font-size:1.32rem}.case-card p{color:var(--muted);font-size:.92rem}.case-card b{color:#fff;background:#3d6f22db;border-radius:6px;padding:8px 10px;font-size:.88rem;position:absolute;top:-42px;right:18px}.case-card:first-child,.case-card:nth-child(2){grid-column:span 2;min-height:0}.case-card:first-child img,.case-card:nth-child(2) img{height:300px}.contact-card{padding:30px;animation:.65s both fade-up}.contact-card strong{color:var(--orange);font-size:clamp(2.3rem,5vw,4rem);line-height:1;display:block}.contact-card span{color:var(--green-dark);margin-top:12px;font-weight:850;display:block}.contact-card p{margin-top:22px}.contact-card a{width:100%;margin-top:24px}.site-footer{color:#4d5b4e;border-top:1px solid var(--line);background:#f3f7ef;justify-content:space-between;gap:24px;padding:38px 52px;display:flex}.site-footer strong{color:var(--green-dark);font-size:1.16rem;display:block}.site-footer p{color:#6b756b}@media (max-width:1020px){.site-header{grid-template-columns:1fr auto;padding:0 22px}.nav{display:none}.hero,.company-section,.contact-section,.section-heading{grid-template-columns:1fr}.hero{min-height:auto;padding:62px 24px 34px}.service-grid,.case-grid,.quick-band{grid-template-columns:repeat(2,1fr)}}@media (max-width:680px){.site-header{min-height:70px}.brand{min-width:0}.brand-label{display:none}.brand strong{font-size:1.18rem}.brand small,.header-call{display:none}.hero{padding-top:44px}h1{font-size:2.8rem}.hero-showcase{grid-template-columns:1fr}.hero-main-image{height:300px;min-height:0}.hero-stack{grid-template-columns:1fr 1fr}.hero-stack img{height:150px}.section,.company-section,.case-section,.contact-section{width:min(100% - 32px,1180px);padding:74px 0}.case-section{width:100%;padding-inline:16px}.service-grid,.case-grid,.quick-band,.company-copy dl div{grid-template-columns:1fr}.case-card:first-child,.case-card:nth-child(2){grid-column:auto;min-height:330px}.quick-band span{border-bottom:1px solid #ffffff3d;border-right:0;min-height:70px}.site-footer{padding:32px 24px;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
