/* Independent CoreChem design study. Existing product data and RFQ behavior remain the baseline. */
:root{--paper:#f3f6f5;--paper-light:#e8efed;--ink:#10181d;--blue:#0f4c5c;--cyan:#63d5de;--muted:#546568;--line:#ccd6d5;--max:1280px}
body{line-height:1.7}h1,h2,h3{font-weight:600}a,button{-webkit-tap-highlight-color:transparent}
.shell{width:min(var(--max),calc(100% - 96px))}.section{border-bottom:1px solid var(--line)}
.site-header{background:#f3f6f5f5;border-bottom:1px solid var(--line)}
.header-inner{height:88px;grid-template-columns:1fr auto auto;gap:24px;padding:0}
.brand{font-size:25px;gap:12px;letter-spacing:-.05em}.brand img{width:40px;height:40px}.brand small{font-size:7px;letter-spacing:.18em}
.main-nav{border:0;align-items:center;gap:24px;overflow:visible;width:auto;padding:0}
.main-nav a{min-width:0;height:auto;min-height:44px;border:0;padding:0;font-size:13px;font-weight:500}
.main-nav a:not(.nav-cta):after{left:0;right:0;bottom:4px;height:1px}.main-nav .nav-cta{padding:0 20px;box-shadow:none;position:static}
.language-picker{margin:0}.language-toggle{border:0;min-width:106px}.language-menu{box-shadow:0 12px 35px #10181d12;border-color:var(--line)}
.menu-toggle{display:none}.scroll-progress{height:2px}
.hero{border:0}.hero-fullbleed{min-height:650px;height:calc(100svh - 88px);max-height:860px;background:#082d38}
.hero-fullbleed .hero-carousel{inset:0;height:100%;aspect-ratio:auto}
.hero-fullbleed .hero-slide img,.hero-fullbleed .hero-slide.is-active img{object-fit:cover;object-position:67% center;filter:saturate(.65);transform:scale(1.025)}
.hero-fullbleed .hero-slide:after{background:linear-gradient(90deg,#06252fee 0%,#082f38dc 28%,#0b37465c 66%,#0a253328 100%)}
.hero-overlay{height:100%;min-height:0;padding-top:0;align-items:center}
.hero .hero-copy{position:relative;max-width:700px;width:60%;padding:48px 0 72px;background:transparent;border:0;box-shadow:none;color:#fff}
.hero-brand{font-size:clamp(68px,7.5vw,108px);line-height:1;letter-spacing:-.065em;font-weight:600;margin:0 0 46px}
.hero-brand span{display:block;font-size:10px;letter-spacing:.24em;font-weight:500;margin-top:20px;color:#a5d3d6}
.hero h1,html[lang=en] .hero h1,html[lang=ja] .hero h1,html[lang|=zh] .hero h1{font-size:clamp(30px,3.25vw,48px);line-height:1.35;letter-spacing:-.04em;margin:0 0 22px;word-break:keep-all;overflow-wrap:normal;font-weight:500}
.hero .hero-lead{color:#d0dfe1;font-size:16px;line-height:1.9;max-width:510px;margin:0}
.hero .hero-actions{gap:12px;margin:34px 0 0;max-width:none;display:flex}
.button{font-size:13px;font-weight:500;border-color:var(--line);min-height:52px;padding:0 24px;transition:background .2s,color .2s,transform .2s}
.hero .button.primary{background:var(--cyan);color:#082d38;border-color:var(--cyan)}
.hero .button.quiet{background:transparent;border-color:#ffffff66;color:#fff}
.hero-scroll{position:absolute;left:50%;bottom:26px;z-index:3;text-decoration:none;color:#fff;font-size:23px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #ffffff44;border-radius:50%;transition:transform .2s}.hero-scroll:hover{transform:translateY(4px)}
.hero-copy>*{animation:designEnter .8s ease both}.hero-copy h1{animation-delay:.12s}.hero-copy .hero-lead{animation-delay:.22s}.hero-copy .hero-actions{animation-delay:.3s}
@keyframes designEnter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.section-heading,.section-heading.compact{grid-template-columns:.65fr 2fr;gap:40px;padding:108px 0 54px;align-items:start}
.section-number,.kicker,.eyebrow{font-size:10px;font-weight:600;letter-spacing:.14em}.section-number{padding-top:10px}
.section-heading h2,.focus-heading h3,.about-heading h2{font-size:clamp(36px,4.2vw,58px);line-height:1.22;letter-spacing:-.05em;font-weight:500;margin:12px 0 24px}
.section-heading p:not(.kicker){font-size:16px;line-height:1.8;max-width:640px;margin-bottom:0}.kicker{margin-bottom:16px}
.supply-section{background:var(--paper)}.supply-grid{border:0;gap:48px;margin-bottom:108px}
.supply-card,.supply-card-dark{position:relative;border:0;background:transparent;color:var(--ink);padding:0;min-height:0}
.supply-visual{margin:0 0 28px;height:280px;overflow:hidden;background:#e1e8e8}.supply-visual img{width:100%;height:100%;object-fit:cover;transition:transform .65s}.supply-card:hover img{transform:scale(1.04)}
.supply-index{display:inline-block;margin:0 16px 0 0;color:var(--blue);font-size:11px}.supply-tag,.supply-card-dark .supply-tag{font-weight:500;color:var(--blue);font-size:10px}
.supply-card-dark .supply-index{color:var(--blue)}.supply-card h3{font-size:34px;line-height:1.3;letter-spacing:-.045em;font-weight:500;margin:18px 0 16px}
.supply-card p,.supply-card-dark p{color:var(--muted);font-size:15px;max-width:490px;margin-bottom:16px}.supply-link{font-size:13px;font-weight:500;margin-top:8px;text-decoration:none;border-bottom:1px solid var(--blue);padding-bottom:5px;color:var(--blue)}
.materials-section{background:#e8efed}.material-tabs{border:0;border-bottom:1px solid #aab9b6;background:transparent;gap:0}
.material-tab{border:0!important;border-bottom:2px solid transparent!important;background:transparent;padding:18px 20px;min-height:80px;color:var(--muted)}
.material-tab[aria-selected=true]{background:#f3f6f5;border-bottom-color:var(--blue)!important;color:var(--blue)}.material-tab:hover{background:#f3f6f580}.material-tab small{font-weight:500;font-size:9px}.material-tab b{font-size:24px;font-weight:500;margin-top:6px}
.material-stage{border:0;background:transparent;padding:54px 0 88px;min-height:0}.material-stage-grid{gap:64px;grid-template-columns:1fr 1.15fr}
.material-title-row h3{font-size:96px;font-weight:500;line-height:1;margin:18px 0 24px;letter-spacing:-.07em}.material-full{font-size:12px}.material-badge{font-weight:500;font-size:9px;line-height:1.7;background:var(--blue)}
.material-summary{font-size:23px;font-weight:400;line-height:1.7}.material-actions{gap:10px}.material-actions .button{padding:0 16px;font-size:12px}.material-visual{margin:0 0 28px;border:0!important;box-shadow:none!important;height:270px;aspect-ratio:auto;overflow:hidden}.material-visual img{width:100%;height:100%;object-fit:cover}
.material-data{border-color:#aab9b6}.data-block{border-color:#bac9c6}.data-block h4{font-weight:600}.data-block ul,.data-block p{font-size:13px;line-height:1.8}
.comparison-section{background:#102e38}.comparison-wrap{padding-bottom:96px}.comparison-controls label{border-color:#48606a;font-weight:400}.comparison-controls label:has(input:checked){background:#244854;border-color:#7cb9c0}
.comparison-wrap th,.comparison-wrap td{border-color:#3c5762;padding:22px 18px;font-size:13px;line-height:1.8}.comparison-wrap th:first-child,.comparison-wrap td:first-child{color:#c1d2d6}.comparison-scroll th:first-child{background:#102e38}.comparison-wrap .is-selected{background:#19424f}.comparison-note{line-height:1.9;color:#bdd0d5;margin-top:24px}
.machined-section{background:var(--paper)}.machined-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding-bottom:88px}
.machined-card,.machined-card:nth-child(odd){border:0;background:transparent;margin:0;padding:0;min-height:0}.part-visual{height:200px;margin:0 0 22px!important;border:0!important;overflow:hidden}.part-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.machined-card:hover img{transform:scale(1.04)}
.machined-icon{display:none}.machined-card .solution-code{display:none}.claim-status{font-weight:500;border:0;border-left:2px solid var(--blue);background:transparent!important;font-size:9px;padding:2px 8px;margin:0 0 8px;color:var(--blue)}
.machined-card h3{font-size:22px;line-height:1.4;font-weight:500;margin:12px 0}.machined-card p{font-size:14px;line-height:1.8;min-height:100px}.machined-card button,.solution-card button{font-weight:500;font-size:12px}
.focus-heading{grid-template-columns:.65fr 2fr;gap:40px;border-top:1px solid var(--line);padding:48px 0 36px}.focus-heading h3{font-size:36px;margin:0}.focus-grid{gap:30px;padding-bottom:64px}
.focus-card,.focus-card:nth-child(even){border:0;border-top:1px solid #9dadb0;background:transparent;padding:22px 0;margin:0;min-height:0}.focus-card h3{font-size:20px;line-height:1.4;margin:24px 0 16px}.focus-card p{font-size:14px;line-height:1.8}
.scope-grid{border:0;gap:36px;margin-bottom:100px}.scope-card,.scope-card-dark{border:0;border-top:1px solid var(--line);background:transparent;color:var(--ink);padding:28px 0}.scope-card-dark .scope-label{color:var(--blue)}.scope-card h3{font-size:22px;line-height:1.4;margin:22px 0 12px}.scope-card p,.scope-card-dark p{font-size:14px;line-height:1.8;color:var(--muted)}
.solutions-section{background:#e8efed}.solution-grid{gap:36px;padding-bottom:88px}.solution-card{border:0;background:transparent;margin:0;padding:0;min-height:0}.solution-card:hover{transform:none}.solution-card:has(button:hover){background:transparent}.solution-card button+button{margin-left:16px}
.application-visual{height:220px;margin:0 0 22px!important;border:0!important;overflow:hidden}.application-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.solution-card:hover img{transform:scale(1.025)}.solution-card h3{font-size:24px;line-height:1.3;font-weight:500;margin:16px 0}.solution-card p{font-size:14px;line-height:1.8}.solution-materials span{font-weight:500;border-color:#afbfbc}
.about-shell{padding:110px 0}.about-heading{max-width:860px}.about-heading>p{font-size:18px;color:var(--muted);line-height:1.9}.about-grid{gap:48px;margin:64px 0}.about-card{border-top:1px solid #8ba1a2;padding:24px 0}.about-card h3{font-weight:500;font-size:25px;line-height:1.4}.about-card p{font-size:15px;line-height:1.9;color:var(--muted)}.about-principle{background:transparent;border:0;border-top:1px solid var(--line);padding:36px 0 0}.about-principle h3{font-size:24px;font-weight:500}.about-principle p{font-size:15px;color:var(--muted)}
.site-footer{background:#0b2832;padding:54px 0}.footer-grid{gap:60px}.footer-grid strong{font-size:32px;font-weight:500;letter-spacing:-.045em}.footer-grid small{font-size:8px;letter-spacing:.15em;color:#adbec4}.footer-details{font-size:12px;line-height:1.9}.footer-details dt{color:#a8bcc2}.footer-details dd{color:#e6eeee}
@media(max-width:1100px){
 .shell{width:calc(100% - 64px)}.header-inner{gap:16px}.main-nav{gap:15px}.main-nav a{font-size:12px}.brand small{display:none}.hero .hero-copy{width:70%;max-width:620px}.machined-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.part-visual{height:260px}.machined-card p{min-height:0}
}
@media(max-width:900px){
 .header-inner{min-height:76px;height:76px;grid-template-columns:1fr auto auto;row-gap:0;padding:0}.brand{font-size:23px}.language-picker{grid-column:3;grid-row:1}.menu-toggle{display:block;grid-column:2;grid-row:1;border:0;border-bottom:1px solid var(--blue);background:transparent;color:var(--blue);font-size:12px;padding:8px 0;min-height:44px;cursor:pointer}
 .main-nav{display:none;position:absolute;left:0;right:0;top:76px;grid-column:auto;grid-row:auto;background:var(--paper);padding:20px 32px 28px;border-bottom:1px solid var(--line);gap:0;box-shadow:0 16px 20px #10181d10}
 .main-nav.is-open{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.main-nav a{padding:12px 0;justify-content:start;font-size:15px;height:48px}.main-nav .nav-cta{position:static;justify-content:center;margin:0;padding:0 16px}
 main>section{scroll-margin-top:76px}.hero-fullbleed{height:calc(100svh - 76px);min-height:660px}.hero-overlay{min-height:0}.hero .hero-copy{width:78%;padding:40px 0 70px;max-width:620px}.hero-fullbleed .hero-slide:after{background:linear-gradient(90deg,#06252fee 0%,#082f38d9 44%,#0a253350 100%)}
 .section-heading,.section-heading.compact{grid-template-columns:1fr;gap:18px;padding:76px 0 40px}.section-number{padding:0}.section-heading h2{font-size:44px}.section-heading .kicker{display:none}.supply-grid{gap:28px;margin-bottom:76px}.supply-visual{height:230px}.supply-card h3{font-size:28px}
 .material-stage-grid{grid-template-columns:1fr;gap:40px}.material-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.material-tab{padding:16px 10px}.material-tab b{font-size:21px}.material-stage{padding:40px 0 64px}.material-title-row h3{font-size:84px}.material-summary{max-width:600px}.material-visual{height:320px}.material-actions{margin-top:24px}.focus-heading{grid-template-columns:1fr;gap:18px}.focus-grid{grid-template-columns:1fr 1fr}.solution-grid{grid-template-columns:1fr 1fr;gap:44px 28px}.about-shell{padding:76px 0}.about-grid{gap:28px}.about-card h3{font-size:22px}.about-principle{display:block}.about-principle .button{margin-top:24px}.footer-grid{grid-template-columns:1fr;gap:32px}
}
@media(max-width:560px){
 .shell{width:calc(100% - 40px)}.header-inner{gap:16px;min-height:72px;height:72px}.brand{font-size:22px;gap:8px}.brand img{width:30px;height:30px}.language-toggle{min-width:72px;height:44px;padding:0;gap:5px;font-size:10px}.language-flag{display:none}.menu-toggle{font-size:11px}.main-nav{top:72px;padding:16px 20px 24px}.main-nav.is-open{gap:8px 20px}main>section{scroll-margin-top:72px}
 .hero-fullbleed{height:calc(100svh - 72px);min-height:620px;max-height:850px;background:#082d38}.hero-fullbleed .hero-carousel{height:100%;inset:0}.hero-fullbleed .hero-slide img,.hero-fullbleed .hero-slide.is-active img{object-fit:cover;object-position:64% center;filter:saturate(.55);transform:none}.hero-fullbleed .hero-slide:after{background:linear-gradient(90deg,#06252fed,#082f38bb 70%,#0a253388)}
 .hero-overlay{width:calc(100% - 40px);height:100%;padding:0;align-items:center}.hero .hero-copy{width:100%;max-width:none;padding:24px 0 76px;background:transparent;border:0;box-shadow:none}.hero-brand{font-size:66px;margin-bottom:38px}.hero-brand span{font-size:8px;letter-spacing:.17em;margin-top:15px}.hero h1,html[lang=en] .hero h1,html[lang=ja] .hero h1,html[lang|=zh] .hero h1{font-size:29px;line-height:1.45;margin:0 0 20px;letter-spacing:-.045em;word-break:normal;overflow-wrap:anywhere}.hero .hero-lead{font-size:14px;line-height:1.85;max-width:360px}.hero .hero-actions{display:flex;gap:10px;max-width:none;margin-top:26px}.hero .button{min-height:50px;padding:0 18px;font-size:12px}.hero-scroll{bottom:20px}
 .section-heading,.section-heading.compact{padding:60px 0 32px;gap:16px}.section-heading h2,.about-heading h2,html[lang=ja] .section-heading h2,html[lang|=zh] .section-heading h2{font-size:35px;line-height:1.3;margin:0 0 18px}.section-heading p:not(.kicker){font-size:14px}.supply-grid{grid-template-columns:1fr;gap:44px;margin-bottom:60px}.supply-card{border:0}.supply-visual{height:240px;margin-bottom:24px}.supply-card h3{font-size:28px;margin-top:16px}.supply-card p{font-size:14px}.supply-tag{font-size:9px}
 .material-tabs{grid-template-columns:repeat(5,minmax(0,1fr))}.material-tab:last-child{grid-column:auto}.material-tab{padding:16px 4px;min-height:58px;text-align:center}.material-tab small{display:block;font-size:8px;line-height:1.4;margin-bottom:5px;letter-spacing:0}.material-tab b{font-size:17px;margin:0}.material-stage{padding:32px 0 56px}.material-title-row h3{font-size:76px}.material-summary{font-size:20px}.material-actions{flex-direction:row;flex-wrap:wrap}.material-actions .button{min-height:48px;font-size:11px;padding:0 12px}.material-visual{height:240px}.material-data{grid-template-columns:1fr}.data-block:nth-child(even){padding-left:0;border-left:0}.material-stage-grid{gap:32px}.material-badge{font-size:9px}
 .comparison-wrap{padding-bottom:60px}.comparison-controls{gap:8px}.comparison-controls label{font-size:12px;padding:8px 10px}.comparison-wrap th,.comparison-wrap td{font-size:12px;padding:16px 12px}.comparison-scroll th:first-child{width:96px}.comparison-note{font-size:11px}
 .machined-grid{grid-template-columns:1fr;gap:40px;padding-bottom:56px}.part-visual{height:240px}.machined-card h3{font-size:25px}.machined-card p{font-size:14px;min-height:0}.focus-heading{padding-top:32px}.focus-heading h3,html[lang=ja] .focus-heading h3,html[lang|=zh] .focus-heading h3{font-size:30px;line-height:1.35}.focus-grid{grid-template-columns:1fr;gap:8px;padding-bottom:32px}.focus-card h3{margin-top:16px}.scope-grid{grid-template-columns:1fr;gap:8px;margin-bottom:48px}.scope-card{border-bottom:0}.scope-card h3{font-size:21px}
 .solution-grid{grid-template-columns:1fr;gap:40px;padding-bottom:60px}.application-visual{height:240px}.solution-card h3{font-size:25px}
 .about-shell{padding:60px 0}.about-heading .section-number{display:block;margin-bottom:24px}.about-heading>p{font-size:16px}.about-grid{grid-template-columns:1fr;gap:8px;margin:36px 0}.about-card h3{font-size:24px;margin-top:18px}.about-principle{padding-top:28px}.about-principle .button{width:auto;margin-top:24px}.site-footer{padding:40px 0}.footer-grid{gap:28px}.footer-details>div{grid-template-columns:72px minmax(0,1fr);gap:10px}.footer-details{font-size:11px}.footer-grid strong{font-size:30px}
}
@media(prefers-reduced-motion:reduce){.hero-copy>*{animation:none}.hero-slide img,.supply-visual img,.part-visual img,.application-visual img{transition:none}.hero-scroll:hover{transform:none}}

/* Product photography: complete centered specimens, consistent natural framing. */
.supply-visual,.material-visual,.part-visual{
  width:100%;height:auto;aspect-ratio:3/2;background:#edf0ee;
}
.supply-visual img,.material-visual img,.part-visual img{
  display:block;width:100%;height:100%;object-fit:contain;object-position:50% 50%;transform:none;transition:none;
}
.supply-card:hover .supply-visual img,.material-visual:hover img,.machined-card:hover .part-visual img{
  transform:none;
}

.material-image-note{margin:-12px 0 0;color:var(--muted);font-size:12px;line-height:1.7}

/* Contextual links to crawlable material and application detail pages. */
.application-detail-link{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;color:var(--blue);font-size:12px;text-underline-offset:5px}

.material-detail-directory{border-top:1px solid var(--line);padding:24px 0 48px}.material-detail-directory>p{font-size:12px;color:var(--muted);margin:0 0 12px}.material-detail-directory nav{display:flex;flex-wrap:wrap;gap:12px 28px}.material-detail-directory a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--blue);text-underline-offset:5px}

/* Give material details the primary action; review status is explanatory text. */
.material-review-note{font-size:13px;line-height:1.7;color:var(--muted);margin:16px 0 0}.material-secondary-actions{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:12px}.material-secondary-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:var(--blue);text-underline-offset:5px}.material-actions .material-detail-action{font-size:14px;padding:0 22px;min-height:52px}
@media(max-width:560px){.material-actions .material-detail-action{font-size:13px;flex:1 0 100%;justify-content:center;min-height:52px}.material-review-note{font-size:12px}.material-secondary-actions{gap:4px 24px}}

/* Contact is a selectable address with one copy action. */
#inquiry{scroll-margin-top:104px}
.footer-email{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px}
.contact-email{font-size:15px;user-select:all;overflow-wrap:anywhere}
.copy-email{min-height:44px;padding:8px 14px;border:1px solid #8baab3;border-radius:0;background:transparent;color:#e6eeee;font-size:12px;cursor:pointer;transition:background .2s,border-color .2s}
.copy-email:hover{background:#ffffff12;border-color:var(--cyan)}
.copy-email:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.copy-email:disabled{cursor:wait;opacity:.65}
.footer-details .email-copy-status{min-height:22px;margin:6px 0 0;color:#adbec4;font-size:12px;line-height:1.8}
@media(max-width:560px){#inquiry{scroll-margin-top:88px}.footer-email{align-items:flex-start;flex-direction:column;gap:10px}.contact-email{font-size:14px}}
