:root{--paper:#F7F7F5;--ink:#111111;--red:#E10600;--hairline:1px solid #111111;--hairline-red:1px solid #E10600}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--paper);color:var(--ink);font-family:'Archivo Narrow',sans-serif;font-size:18px;line-height:1.35;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}header,section,footer{border-bottom:var(--hairline)}nav.sub-nav{border-bottom:var(--hairline);padding:14px 24px;display:flex;justify-content:space-between;align-items:center;text-transform:uppercase;font-size:14px;letter-spacing:0.1em}.brand-tag{font-weight:700;letter-spacing:0.12em;text-transform:uppercase}.top-meta{display:flex;gap:24px;font-size:14px;letter-spacing:0.08em;text-transform:uppercase}.hero-grid{display:grid;grid-template-columns:120px 1fr;min-height:55vh;border-top:var(--hairline)}.hero-left{border-right:var(--hairline);padding:32px 16px;background:transparent;display:flex;flex-direction:column;justify-content:space-between}.hero-right{padding:48px 36px;display:flex;flex-direction:column;justify-content:space-between}.hero-lead{font-size: clamp(38px, 6vw, 76px);font-weight:700;line-height:0.95;text-transform:uppercase;letter-spacing:-0.02em;margin-bottom:24px}.hero-dek{font-size:22px;max-width:720px;line-height:1.25;margin-bottom:32px}.hero-badge{font-size:13px;letter-spacing:0.15em;text-transform:uppercase;color:var(--red);font-weight:700}.cta-rect{display:inline-block;padding:16px 32px;background:var(--red);color:var(--paper);font-weight:700;text-transform:uppercase;letter-spacing:0.08em;font-size:16px;border:none;border-radius:0;width:fit-content}.cta-rect:hover{background:var(--ink);color:var(--paper)}.section-title{font-size:14px;letter-spacing:0.15em;text-transform:uppercase;padding:20px 24px;border-bottom:var(--hairline);color:var(--red);font-weight:700}.four-grid{display:grid;grid-template-columns:repeat(4,1fr)}.service-col{padding:32px 24px;border-right:var(--hairline);min-height:280px;display:flex;flex-direction:column;justify-content:space-between}.service-col:last-child{border-right:none}.service-time{font-size:13px;text-transform:uppercase;letter-spacing:0.1em;color:var(--red);font-weight:700;margin-bottom:8px}.service-head{font-size:24px;line-height:1.1;font-weight:700;text-transform:uppercase;margin-bottom:16px}.service-detail{font-size:16px;line-height:1.3;margin-bottom:16px}.service-price{font-size:36px;font-weight:700;border-top:var(--hairline);padding-top:16px;letter-spacing:-0.02em}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr)}.sched-col{padding:32px 24px;border-right:var(--hairline)}.sched-col:last-child{border-right:none}.sched-day{font-size:14px;letter-spacing:0.1em;text-transform:uppercase;font-weight:700;margin-bottom:8px}.sched-hours{font-size:32px;font-weight:700;letter-spacing:-0.02em}.sched-sub{font-size:15px;color:var(--red);margin-top:6px;text-transform:uppercase;font-weight:600}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr)}.step-col{padding:36px 24px;border-right:var(--hairline)}.step-col:last-child{border-right:none}.step-slot{font-size:14px;text-transform:uppercase;letter-spacing:0.12em;color:var(--red);font-weight:700;margin-bottom:12px}.step-title{font-size:26px;font-weight:700;line-height:1.05;text-transform:uppercase;margin-bottom:14px}.step-desc{font-size:17px;line-height:1.35}.poster-grid{display:grid;grid-template-columns:1fr 2fr;min-height:50vh}.poster-display{padding:48px 24px;border-right:var(--hairline);display:flex;align-items:center;justify-content:center;background:var(--paper)}.giant-num{font-size: clamp(120px, 20vw, 260px);font-weight:700;line-height:0.8;color:var(--ink);letter-spacing:-0.05em}.poster-info{padding:48px 36px;display:flex;flex-direction:column;justify-content:center}.poster-info h3{font-size:36px;text-transform:uppercase;font-weight:700;line-height:1.05;margin-bottom:16px}.poster-info p{font-size:20px;line-height:1.35;max-width:620px}.contact-grid{display:grid;grid-template-columns:1fr 1fr}.contact-col{padding:40px 28px;border-right:var(--hairline)}.contact-col:last-child{border-right:none}.contact-label{font-size:13px;letter-spacing:0.15em;text-transform:uppercase;color:var(--red);font-weight:700;margin-bottom:10px}.contact-value{font-size:28px;font-weight:700;line-height:1.15;margin-bottom:20px}.policy-container{padding:32px 28px;border-top:var(--hairline);background:var(--paper)}.policy-container h4{font-size:16px;text-transform:uppercase;letter-spacing:0.1em;margin-bottom:12px}.policy-container p{font-size:14px;line-height:1.45;max-width:960px;margin-bottom:10px}.nav-row{padding:20px 24px;border-top:var(--hairline);display:flex;justify-content:space-between;align-items:center}.link-box{display:inline-block;padding:12px 24px;border:var(--hairline);font-size:14px;text-transform:uppercase;letter-spacing:0.08em;font-weight:700}.link-box:hover{background:var(--ink);color:var(--paper)}@media(max-width:900px){.hero-grid{grid-template-columns:1fr}.hero-left{border-right:none;border-bottom:var(--hairline);flex-direction:row;padding:16px 20px}.hero-right{padding:28px 20px}.four-grid,.schedule-grid,.steps-grid,.poster-grid,.contact-grid{grid-template-columns:1fr}.service-col,.sched-col,.step-col,.contact-col,.poster-display{border-right:none;border-bottom:var(--hairline);padding:24px 20px}.giant-num{font-size:110px}}