:root{--navy:#051535;--blue:#00317f;--blue-light:#edf3fc;--ink-soft:#526078;--line:#dce2eb;--paper:#fff;--panel:#f6f8fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--navy);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600;letter-spacing:-.055em}p{line-height:1.55}[hidden]{display:none!important}:focus-visible{outline:3px solid #2969cf;outline-offset:4px}.skip-link{position:fixed;top:-100px;left:16px;background:var(--blue);color:#fff;padding:12px 18px;z-index:100}.skip-link:focus{top:14px}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:0 max(5vw,calc((100vw - 1420px)/2));border-bottom:1px solid #05153510;background:#fffffff0;backdrop-filter:blur(16px);position:sticky;top:0;z-index:30}.brand{flex:none;width:185px}.brand img{width:100%}.site-header nav{display:flex;align-items:center;gap:32px}.site-header nav a{font-size:14px;padding:15px 0;white-space:nowrap;transition:color .2s}.site-header nav a:hover{color:var(--blue)}.header-contact{display:inline-flex;align-items:center;gap:22px;background:var(--blue);color:#fff;border-radius:100px;padding:13px 21px;font-size:14px;font-weight:600;white-space:nowrap;transition:background .2s,transform .2s}.header-contact:hover,.contact-button:hover{background:#164b9c;transform:translateY(-2px)}.header-contact span,.contact-button span{font-size:20px;line-height:1}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.16em;line-height:1.5}.eyebrow span{color:var(--blue);padding:0 8px}.chapter{font-size:11px;letter-spacing:.13em;color:var(--ink-soft)}.section{padding:110px max(6vw,calc((100vw - 1200px)/2))}.hero{text-align:center;overflow:hidden}.hero-copy{position:relative;z-index:2;padding:76px 20px 0}.hero h1{font-size:clamp(56px,7.5vw,112px);line-height:.99;letter-spacing:-.07em;margin:22px auto 24px}.hero h1 span{color:var(--blue)}.hero-lead{font-size:clamp(17px,1.8vw,22px);line-height:1.4;max-width:620px;margin:auto;letter-spacing:-.018em}.link-arrow{display:inline-flex;align-items:center;gap:22px;font-size:14px;font-weight:700;padding:13px 0;border-bottom:1px solid var(--blue);transition:gap .2s,color .2s}.link-arrow:hover{gap:29px;color:var(--blue)}.hero .link-arrow{margin-top:26px}.hero-art{max-width:1440px;margin:-4px auto 0;padding:0 5vw}.hero-image-wrap{max-width:1050px;margin:auto;overflow:visible}.hero-image{width:100%;max-height:660px;object-fit:contain;transform:translate3d(0,var(--hero-shift,0px),0) scale(var(--hero-scale,1));transform-origin:center;will-change:transform}.visual-caption{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);font-size:10px;letter-spacing:.14em;color:var(--ink-soft);padding:0 5px 24px;margin-top:-20px;text-align:left}.intro{padding-top:150px;padding-bottom:150px}.intro-top,.quality-label{display:flex;justify-content:space-between;align-items:center;gap:25px}.intro-statement{font-size:clamp(37px,5vw,70px);line-height:1.12;max-width:1100px;margin:42px 0 58px}.intro-statement em{font-style:normal;color:var(--blue)}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.blue-rule{display:block;width:72px;height:3px;background:var(--blue);margin-top:11px}.intro-bottom p{font-size:20px;max-width:510px;letter-spacing:-.02em}.products{background:var(--panel);padding-top:100px;padding-bottom:110px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:35px}.section-heading h2,.process-head h2{font-size:clamp(42px,4.8vw,67px);line-height:1.05;margin-top:20px}.section-heading>p{font-size:17px;color:var(--ink-soft);max-width:320px}.mode-layout{display:grid;grid-template-columns:1.05fr .95fr;border-top:1px solid #c8d2e0;margin-top:56px}.mode-tabs{border-right:1px solid #c8d2e0}.mode-tabs button{width:100%;display:grid;grid-template-columns:48px 1fr 28px;align-items:center;gap:10px;text-align:left;padding:27px 28px 27px 0;border:0;border-bottom:1px solid #c8d2e0;background:transparent;color:var(--navy);font-size:clamp(20px,2.25vw,31px);letter-spacing:-.04em;cursor:pointer;transition:color .2s,padding-left .2s}.mode-tabs button>span:first-child{font-size:11px;letter-spacing:.08em;color:var(--ink-soft)}.mode-tabs button[aria-selected=true]{color:var(--blue);padding-left:16px;background:#e9f1fc}.mode-tabs button[aria-selected=true]>span:first-child{color:var(--blue)}.mode-marker{font-size:20px;opacity:0}.mode-tabs button[aria-selected=true] .mode-marker,.mode-tabs button:hover .mode-marker{opacity:1}.mode-detail{padding:48px 4vw 45px 6vw;min-height:360px;display:flex;flex-direction:column;align-items:start}.mode-index{font-size:11px;letter-spacing:.14em;color:var(--blue);font-weight:700}.mode-detail h3{font-size:clamp(39px,4vw,58px);line-height:1.02;margin:20px 0}.mode-detail [role=tabpanel]>p:last-child{max-width:490px;font-size:17px;color:#485772}.mode-detail .link-arrow{margin-top:auto}.workshop{display:grid;grid-template-columns:1.25fr .75fr;min-height:590px;background:#eaf0f8}.workshop-image{min-height:440px;overflow:hidden}.workshop-image img{width:100%;height:100%;object-fit:cover}.workshop-copy{padding:clamp(50px,6vw,100px);display:flex;flex-direction:column;align-items:start}.workshop-copy h2{font-size:clamp(38px,4.1vw,61px);line-height:1.07;margin:22px 0 30px}.workshop-copy>p:not(.eyebrow){font-size:18px;max-width:410px;color:#3c4d68}.photo-caption{font-size:11px;letter-spacing:.12em;color:var(--ink-soft);margin-top:auto;padding-top:35px}.process{display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw;padding-top:140px;padding-bottom:145px}.process-head{position:sticky;top:130px;align-self:start}.process-head>p:last-child{font-size:18px;color:var(--ink-soft);max-width:380px;margin-top:28px}.process-list{border-top:1px solid var(--line)}.process-item{display:grid;grid-template-columns:56px 1fr;gap:16px;border-bottom:1px solid var(--line);padding:31px 0}.step-no{font-size:13px;color:var(--blue);font-weight:700;padding-top:7px}.process-item h3{font-size:31px;line-height:1.15;margin-bottom:10px}.process-item p{font-size:16px;color:var(--ink-soft);max-width:475px}.quality{background:#f3f6fa;padding-top:110px;padding-bottom:110px}.quality h2{font-size:clamp(45px,5.5vw,77px);line-height:1.06;margin:42px 0 75px}.quality h2 span{color:var(--blue)}.quality-bottom{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-top:1px solid #cbd5e2;padding-top:36px}.quality-bottom>p{font-size:19px;max-width:500px}.quality-terms{display:flex;align-content:start;align-items:start;flex-wrap:wrap;gap:10px}.quality-terms span{border:1px solid #b7c5d7;border-radius:100px;padding:11px 15px;font-size:12px}.contact{background:var(--blue);color:#fff;padding-top:105px;padding-bottom:95px}.contact h2{font-size:clamp(45px,6.8vw,92px);line-height:1.03;margin:30px 0 68px}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:35px;border-top:1px solid #ffffff75;padding-top:34px}.contact-bottom p{font-size:19px;max-width:430px}.contact-button{display:inline-flex;align-items:center;gap:45px;padding:18px 25px;background:#fff;color:var(--blue);border-radius:100px;font-weight:700;white-space:nowrap;transition:background .2s,color .2s,transform .2s}.contact-button:hover{color:#fff}.site-footer{display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap;padding:45px 6vw 30px;font-size:13px}.site-footer>span{color:var(--ink-soft)}.site-footer p{border-top:1px solid var(--line);padding-top:20px;width:100%;color:var(--ink-soft);font-size:11px}.motion .reveal{opacity:0;transform:translateY(20px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.65,.3,1)}.motion .reveal.visible{opacity:1;transform:none}@media(max-width:950px){.site-header{gap:16px}.site-header nav{gap:18px}.brand{width:165px}.section{padding-left:6vw;padding-right:6vw}.workshop{grid-template-columns:1fr 1fr}.workshop-copy{padding:55px 7vw}.process{gap:5vw}.mode-detail{padding-left:4vw}}@media(max-width:700px){html{scroll-padding-top:120px}.site-header{height:auto;min-height:112px;display:grid;grid-template-columns:1fr auto;grid-template-rows:60px 42px;gap:0 10px;padding:0 20px}.brand{width:150px}.site-header nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:10px;overflow-x:auto;white-space:nowrap}.site-header nav a{font-size:12px;padding:12px 0}.header-contact{grid-column:2;grid-row:1;padding:10px 15px;font-size:12px;gap:8px}.hero-copy{padding-top:57px}.hero h1{font-size:clamp(49px,10.6vw,72px)}.hero-lead{font-size:17px;max-width:470px}.hero-art{padding:0 12px;margin-top:18px}.visual-caption{margin-top:0;padding:14px 8px 20px;font-size:8px}.section{padding-top:78px;padding-bottom:78px}.intro-statement{font-size:clamp(37px,7vw,53px);margin:30px 0 40px}.intro-bottom{grid-template-columns:1fr;gap:15px}.intro-bottom p{font-size:17px}.section-heading{display:block}.section-heading>p{margin-top:20px}.mode-layout{display:block;margin-top:35px}.mode-tabs{border-right:0}.mode-tabs button{font-size:23px;padding:19px 10px 19px 0}.mode-detail{padding:35px 0 20px;min-height:310px}.mode-detail h3{font-size:44px}.workshop{display:flex;flex-direction:column}.workshop-image{min-height:300px;max-height:480px}.workshop-copy{padding:55px 6vw;min-height:370px}.workshop-copy h2{font-size:43px}.process{display:block}.process-head{position:static;margin-bottom:45px}.process-head h2{font-size:49px}.quality-bottom{grid-template-columns:1fr;gap:30px}.contact h2{font-size:clamp(47px,9vw,68px)}.contact-bottom{align-items:flex-start;flex-direction:column}.site-footer{padding:35px 6vw}.site-footer>span{order:3;width:100%}.site-footer p{order:4}}@media(max-width:400px){.site-header nav{gap:13px}.site-header nav a{font-size:11px}.hero h1{font-size:47px}.hero-lead{font-size:16px}.hero .link-arrow{margin-top:18px}.intro-statement{font-size:35px}.section-heading h2{font-size:41px}.mode-tabs button{grid-template-columns:32px 1fr 23px;font-size:20px}.quality h2{font-size:43px}.contact h2{font-size:45px}.contact-button{gap:25px;font-size:14px;padding:16px 19px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}.hero-image{transform:none!important;will-change:auto}}
:root .process-head>p:not(.eyebrow){font-size:18px;color:var(--ink-soft);max-width:380px;margin-top:28px}.process-photo{margin:42px 0 0;max-width:410px}.process-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}.process-photo figcaption{font-size:11px;letter-spacing:.09em;color:var(--ink-soft);margin-top:10px}
