.hero{display:grid;min-height:calc(100dvh - var(--header-height));grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);align-items:center;gap:clamp(52px,7vw,108px);padding-block:clamp(54px,7vw,92px)}.hero-copy{display:grid;align-content:center}.hero-copy h1{max-width:11.5ch;font-size:clamp(3.8rem,7.2vw,6rem)}.hero-copy>p{max-width:31ch;margin-top:28px;color:var(--ink-soft);font-size:clamp(1.08rem,1.7vw,1.34rem);line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:38px}.logo-plate{position:relative;display:grid;align-self:stretch;min-height:510px;grid-template-rows:minmax(0,1fr) auto;align-items:center;padding:clamp(28px,4vw,54px);border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line-strong);background:var(--surface)}.logo-plate:before{position:absolute;top:-1px;right:0;width:27%;height:3px;content:"";background:var(--accent)}.logo-plate>img{width:min(100%,460px);margin:auto}.logo-plate dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.logo-plate dl>div{min-width:0;padding:18px 12px 0}.logo-plate dl>div:first-child{padding-left:0}.logo-plate dl>div+div{border-left:1px solid var(--line)}.logo-plate dt{font-family:var(--font-display);font-size:.86rem;font-weight:750}.logo-plate dd{margin-top:3px;color:var(--ink-soft);font-size:.71rem;line-height:1.45}.fit-strip{border-block:1px solid var(--line);background:var(--canvas-strong)}.fit-layout{display:grid;min-height:128px;grid-template-columns:.72fr 1.28fr;align-items:center;gap:48px}.fit-layout h2{font-size:clamp(1.2rem,2vw,1.65rem)}.fit-layout ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.fit-layout li{min-height:62px;align-content:center;padding-inline:clamp(12px,2vw,28px);border-left:1px solid var(--line);color:var(--ink-soft);font-size:.9rem;font-weight:700}.services,.process,.contact{padding-block:var(--section-space)}.service-rail{border-top:1px solid var(--line-strong)}.service-row{display:grid;grid-template-columns:.72fr 1.18fr .7fr;gap:clamp(28px,5vw,76px);padding-block:clamp(30px,4vw,52px);border-bottom:1px solid var(--line);transition:background-color .18s ease}.service-row:hover{background:var(--accent-soft)}.service-row h3{font-size:clamp(1.6rem,3vw,2.7rem)}.service-row>p{max-width:44ch;color:var(--ink-soft)}.service-row ul{display:grid;align-content:start;gap:8px}.service-row li{position:relative;padding-left:18px;color:var(--ink-soft);font-size:.84rem;font-weight:650}.service-row li:before{position:absolute;top:.78em;left:0;width:8px;height:1px;content:"";background:var(--accent)}.service-context{max-width:72ch;margin-top:30px;color:var(--ink-soft);font-size:.88rem}.doll-entry{padding-block:clamp(76px,9vw,132px);border-block:1px solid var(--line);background:var(--canvas-strong)}.doll-layout{display:grid;grid-template-columns:.92fr 1.08fr;align-items:start;gap:clamp(52px,9vw,130px)}.doll-title{position:relative;min-height:280px;align-content:end;overflow:hidden;border-bottom:3px solid var(--accent)}.doll-title>span{position:absolute;top:-.2em;left:-.08em;color:transparent;font-family:var(--font-display);font-size:clamp(8rem,18vw,16rem);font-weight:800;letter-spacing:-.08em;line-height:.8;-webkit-text-stroke:1px var(--line-strong)}.doll-title h2{position:relative;padding-bottom:26px;font-size:clamp(3.4rem,7vw,6.5rem)}.doll-copy{padding-top:20px}.doll-copy>p{max-width:54ch;color:var(--ink-soft)}.doll-copy .doll-lead{max-width:24ch;color:var(--ink);font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.45rem);font-weight:650;letter-spacing:-.02em;line-height:1.25}.doll-copy .doll-lead+p{margin-top:22px}.doll-status{margin-top:18px;font-weight:750}.doll-copy .text-link{margin-top:28px}.process-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line-strong)}.process-list li{min-height:260px;padding:30px clamp(18px,2.5vw,36px) 24px}.process-list li+li{border-left:1px solid var(--line)}.process-list h3{max-width:8ch;font-size:clamp(1.3rem,2vw,1.75rem)}.process-list p{max-width:25ch;margin-top:72px;color:var(--ink-soft);font-size:.9rem}.content-band{padding-block:clamp(64px,8vw,108px);border-block:1px solid var(--line);background:var(--surface)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:48px}.content-layout h2{max-width:14ch;font-size:clamp(2.1rem,4vw,4rem)}.content-layout p{margin-top:18px;color:var(--ink-soft)}.contact{display:grid;grid-template-columns:minmax(0,.82fr) minmax(460px,1.18fr);gap:clamp(48px,8vw,120px)}.contact-copy h2{max-width:8ch;font-size:clamp(2.8rem,5.8vw,5.5rem)}.contact-copy>p{max-width:38ch;margin-top:26px;color:var(--ink-soft);font-size:1.04rem}.contact-copy dl{margin-top:46px;border-top:1px solid var(--line-strong)}.contact-copy dl>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:20px;padding-block:14px;border-bottom:1px solid var(--line)}.contact-copy dt{color:var(--accent-text);font-weight:800}.contact-copy dd{color:var(--ink-soft)}.qr-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:24px}.qr-item{min-width:0}.qr-image{padding:clamp(16px,2.4vw,28px);border:1px solid var(--line);background:#fff}.qr-image img{width:100%;aspect-ratio:1;object-fit:cover}.qr-item figcaption{display:grid;gap:3px;padding-top:14px}.qr-item strong{font-family:var(--font-display);font-size:1.05rem}.qr-item small{color:var(--ink-soft);font-size:.8rem}@media(prefers-reduced-motion:no-preference){.hero-copy{animation:home-copy-in .62s cubic-bezier(.16,1,.3,1) both}.logo-plate{animation:home-mark-in .72s 80ms cubic-bezier(.16,1,.3,1) both}.logo-plate:before{transform-origin:right;animation:home-line-in .76s .18s cubic-bezier(.16,1,.3,1) both}@keyframes home-copy-in{0%{opacity:0;transform:translateY(18px)}}@keyframes home-mark-in{0%{opacity:0;clip-path:inset(0 0 12% 0);transform:translateY(22px)}}@keyframes home-line-in{0%{transform:scaleX(0)}}}@media(prefers-color-scheme:dark){.logo-plate{background:#e9edf0;color:#08142f}.logo-plate dd{color:#536071}.logo-plate dl,.logo-plate dl>div+div{border-color:#08142f2e}}@media(max-width:1080px){.hero{grid-template-columns:minmax(0,1fr) minmax(340px,.86fr);gap:44px}.hero-copy h1{font-size:clamp(3.3rem,6vw,4.6rem)}.service-row{grid-template-columns:.7fr 1.3fr}.service-row ul{grid-column:2;grid-template-columns:repeat(3,minmax(0,auto));justify-content:start;gap:18px}.process-list p{margin-top:42px}}@media(max-width:840px){.hero{min-height:auto;grid-template-columns:1fr;gap:54px;padding-block:62px 72px}.hero-copy h1{max-width:10ch;font-size:clamp(3.4rem,11vw,5.4rem)}.hero-copy>p{max-width:34ch}.logo-plate{min-height:460px}.fit-layout{min-height:0;grid-template-columns:1fr;gap:22px;padding-block:30px}.fit-layout ul{margin-inline:-12px}.fit-layout li{padding-inline:12px;text-align:center}.service-row{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)}.service-row ul{grid-column:1 / -1}.doll-layout{grid-template-columns:1fr;gap:48px}.doll-title{min-height:230px}.process-list{grid-template-columns:repeat(2,minmax(0,1fr))}.process-list li{min-height:240px;border-bottom:1px solid var(--line)}.process-list li:nth-child(3){border-left:0}.content-layout{grid-template-columns:1fr;align-items:start}.contact{grid-template-columns:1fr}.contact-copy h2{max-width:10ch}}@media(max-width:560px){.hero{gap:32px;padding-block:40px 48px}.hero-copy h1{max-width:none;font-size:clamp(2.65rem,12vw,3rem)}.hero-copy>p{margin-top:20px;font-size:1.02rem}.hero-actions{display:grid;grid-template-columns:1fr;margin-top:30px}.logo-plate{min-height:0;padding:16px}.logo-plate>img{width:min(100%,260px)}.logo-plate dl{display:none}.fit-layout ul{grid-template-columns:repeat(2,minmax(0,1fr))}.fit-layout li:nth-child(3){border-top:1px solid var(--line)}.fit-layout li:nth-child(odd){border-left:0}.service-row{grid-template-columns:1fr;gap:18px;padding-block:30px}.service-row ul{grid-column:auto;grid-template-columns:1fr;gap:7px}.doll-title{min-height:190px}.doll-title>span{font-size:9.2rem}.doll-title h2{font-size:clamp(3.3rem,16vw,4.6rem)}.process-list{grid-template-columns:1fr}.process-list li,.process-list li:nth-child(3){min-height:0;padding:28px 0;border-left:0}.process-list h3{max-width:none}.process-list p{max-width:32ch;margin-top:14px}.content-layout{gap:30px}.qr-list{gap:14px}.qr-image{padding:10px}.qr-item small{line-height:1.45}}
