:root{--ink:#080a0d;--paper:#ece8df;--gold:#c7a66a;--line:rgba(255,255,255,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--paper);font-family:Arial,"Noto Sans KR",sans-serif;font-weight:300}a{color:inherit;text-decoration:none}.detail-nav{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;z-index:3;width:100%}.detail-brand{font:500 14px Georgia,serif;letter-spacing:.18em}.detail-nav div{display:flex;gap:24px}.detail-nav a{font-size:12px;letter-spacing:.08em}.detail-hero{min-height:88svh;padding:180px 9vw 90px;display:grid;grid-template-columns:.75fr 1.25fr;gap:8vw;align-items:end;position:relative;overflow:hidden;background:linear-gradient(135deg,#101722,#080a0d)}.detail-hero:after{content:"";position:absolute;width:48vw;height:48vw;border-radius:50%;right:-15vw;top:-15vw;background:radial-gradient(circle,rgba(199,166,106,.2),transparent 67%)}.detail-index{align-self:start;color:var(--gold);font:13px Georgia,serif;letter-spacing:.18em}.detail-copy{position:relative;z-index:1}.detail-kicker{font:12px Georgia,serif;letter-spacing:.2em;color:var(--gold)}.detail-copy h1{font-size:clamp(3.1rem,7vw,7.4rem);line-height:.98;letter-spacing:-.06em;font-weight:300;margin:24px 0 30px}.detail-copy .lead{font-size:clamp(1.15rem,2vw,1.75rem);line-height:1.65;color:#c9c5bc}.case-image{padding:0 5vw;background:#0d1219}.case-image img{width:100%;display:block;max-height:82vh;object-fit:cover;object-position:top;box-shadow:0 40px 90px rgba(0,0,0,.45)}.detail-section{padding:130px 9vw;border-bottom:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:.55fr 1.45fr;gap:9vw}.section-label{color:var(--gold);font:12px Georgia,serif;letter-spacing:.18em}.detail-section h2{font-size:clamp(2rem,4vw,4rem);font-weight:300;line-height:1.25;letter-spacing:-.045em;margin:0 0 34px}.detail-section p{color:#a7a6a2;font-size:16px;line-height:2;margin:0}.strategy-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.strategy-list div{padding:30px 25px 15px 0;border-right:1px solid var(--line);min-height:180px}.strategy-list div+div{padding-left:25px}.strategy-list span{display:block;color:var(--gold);font:12px Georgia,serif;margin-bottom:35px}.strategy-list p{color:#ddd8cf;font-size:17px;line-height:1.65}.detail-cta{padding:130px 9vw;text-align:center;background:#e7e2d8;color:#151719}.detail-cta p{font:13px Georgia,serif;letter-spacing:.18em;color:#8e6d37}.detail-cta h2{font-size:clamp(2.2rem,5vw,5rem);font-weight:300;letter-spacing:-.05em;margin:25px 0 45px}.buttons{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.button{padding:17px 25px;border:1px solid #25282b;font-size:13px}.button.primary{background:#17191c;color:#fff}.detail-footer{padding:40px 5vw;display:flex;justify-content:space-between;color:#777;font-size:11px}.service-only .detail-hero{min-height:76svh}.service-pack{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line)}.service-pack div{padding:28px 20px 20px 0;border-right:1px solid var(--line);min-height:150px}.service-pack div+div{padding-left:20px}.service-pack span{color:var(--gold);font:12px Georgia,serif}.service-pack p{font-size:14px;line-height:1.65;color:#ddd8cf;margin-top:25px}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.process-steps div{padding:28px 24px 10px 0}.process-steps div+div{padding-left:24px;border-left:1px solid var(--line)}.process-steps span{color:var(--gold);font:12px Georgia,serif}.process-steps p{font-size:15px;line-height:1.75;color:#d1cdc5;margin-top:25px}@media(max-width:800px){.detail-nav{height:72px}.detail-nav div{gap:12px}.detail-hero{min-height:720px;padding:145px 24px 75px;grid-template-columns:1fr;gap:70px}.detail-copy h1{font-size:clamp(2.8rem,14vw,4.8rem)}.case-image{padding:0}.detail-section{padding:90px 24px}.detail-grid{grid-template-columns:1fr;gap:45px}.strategy-list,.service-pack,.process-steps{grid-template-columns:1fr}.strategy-list div,.strategy-list div+div,.service-pack div,.service-pack div+div,.process-steps div,.process-steps div+div{padding:25px 0;border-right:0;border-left:0;border-bottom:1px solid var(--line);min-height:auto}.detail-cta{padding:95px 24px}.detail-footer{padding:30px 24px;flex-direction:column;gap:12px}}

/* Service pages are scoped to prevent the portfolio detail styles from overriding them. */
.service-only .detail-hero{min-height:620px;padding:150px 9vw 80px;display:grid;grid-template-columns:.7fr 1.3fr;gap:7vw;align-items:end}.service-only .detail-copy h1{max-width:760px;font-size:clamp(2.7rem,5.2vw,5.2rem);line-height:1.08;letter-spacing:-.05em;margin:18px 0 24px}.service-only .detail-copy .lead{max-width:700px;font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.7}.service-only .detail-section{padding:92px 9vw}.service-only .detail-grid{display:grid;grid-template-columns:180px minmax(0,760px);gap:7vw;justify-content:start}.service-only .detail-section h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.3;margin:0 0 24px}.service-only .detail-section p{font-size:15px;line-height:1.85}.service-only .detail-cta{padding:95px 9vw}.service-only .detail-cta h2{font-size:clamp(2rem,4vw,3.8rem)}
@media(max-width:800px){.service-only .detail-hero{min-height:560px;padding:125px 24px 65px;grid-template-columns:1fr;gap:44px}.service-only .detail-copy h1{font-size:clamp(2.25rem,11vw,3.8rem)}.service-only .detail-section{padding:70px 24px}.service-only .detail-grid{grid-template-columns:1fr;gap:25px}.service-only .detail-section h2{font-size:clamp(1.65rem,8vw,2.25rem)}}

/* Use one consistent left edge throughout each service page. */
.service-only .detail-hero{display:block;padding:168px 9vw 86px}.service-only .detail-index{display:none}.service-only .detail-copy{max-width:760px}.service-only .detail-kicker{margin:0 0 18px}.service-only .detail-copy h1{margin:0 0 25px}.service-only .detail-grid{grid-template-columns:1fr;gap:18px;max-width:940px}.service-only .section-label{display:block}.service-only .detail-section h2{margin-bottom:22px}
@media(max-width:800px){.service-only .detail-hero{display:block;padding:130px 24px 68px}.service-only .detail-copy{max-width:none}.service-only .detail-grid{gap:15px}}
