/* ALLPOINT 2026 design direction: editorial, full-bleed, connected intelligence. */
:root { --ap-ink:#06162f; --ap-blue:#0b2b59; --ap-orange:#ff5b21; --ap-paper:#f6f7f5; }
body { background:var(--ap-paper); color:var(--ap-ink); }
.site-header { position:absolute; background:linear-gradient(180deg,rgba(3,15,33,.72),rgba(3,15,33,0)); border:0; backdrop-filter:none; }
.site-header.is-scrolled { position:fixed; background:rgba(5,19,40,.94); backdrop-filter:blur(16px); }
.header-inner { width:calc(100% - clamp(40px,7vw,144px)); max-width:none; }
.brand, .main-nav { color:#fff; }
.main-nav { gap:clamp(16px,2vw,34px); font-size:14px; }
.main-nav a:not(.nav-partner)::after { background:#fff; }
.nav-partner { color:#ff936c; }

.hero { min-height:100svh; height:900px; background:var(--ap-ink); }
.hero-slide { position:relative; height:100%; opacity:1; visibility:visible; }
.hero-image { object-position:68% center; filter:saturate(.78) contrast(1.04) brightness(.76); }
.hero-scrim { background:linear-gradient(90deg,#04152f 0%,rgba(4,21,47,.96) 24%,rgba(4,21,47,.69) 43%,rgba(4,21,47,.12) 72%,rgba(4,21,47,.08) 100%),linear-gradient(0deg,rgba(4,21,47,.72) 0%,transparent 35%); }
.hero-inner { width:calc(100% - clamp(40px,7vw,144px)); max-width:none; padding-top:clamp(175px,22vh,248px); }
.hero-kicker { color:#a8c6ef; margin-bottom:30px; font-size:12px; font-weight:800; letter-spacing:1.7px; }
.hero h1 { max-width:840px; color:#fff; font-size:clamp(56px,6.3vw,100px); line-height:1.05; letter-spacing:-.085em; font-weight:800; }
.hero h1 em { color:#ff6c35; }
.hero-copy { color:#d4dfec; max-width:510px; margin-top:35px; font-size:19px; line-height:1.7; }
.hero-actions { margin-top:44px; }
.button { min-height:52px; border-radius:2px; padding:0 22px; letter-spacing:-.6px; }
.button-primary { background:var(--ap-orange); box-shadow:none; }
.button-primary:hover,.button-primary:focus-visible { background:#ff7844; }
.hero::after { content:"01 / ALLPOINT"; position:absolute; right:clamp(20px,5vw,76px); bottom:42px; color:rgba(255,255,255,.7); font-size:11px; font-weight:700; letter-spacing:1.6px; writing-mode:vertical-rl; transform:rotate(180deg); }

.business { padding:clamp(104px,12vw,176px) clamp(20px,7vw,144px) 0; background:var(--ap-paper); }
.business-heading { display:grid; grid-template-columns:minmax(280px,.74fr) minmax(390px,1.26fr); align-items:start; border-top:1px solid #8f9daf; padding-top:20px; }
.business-heading p { color:var(--ap-orange); font-size:12px; letter-spacing:1.6px; }
.business-heading h2 { max-width:680px; font-size:clamp(42px,5.3vw,76px); line-height:1.08; letter-spacing:-.075em; }
.business-grid { margin-top:86px; grid-template-columns:repeat(4,1fr); border-top:1px solid #bac2cd; }
.business-item { min-height:260px; padding:24px 24px 32px 0; border-color:#cbd1d8; background:transparent !important; }
.business-item:not(:first-child) { padding-left:24px; }
.business-item::before { content:"0" counter(item); counter-increment:item; display:block; color:#8490a0; font-family:Arial,sans-serif; font-size:12px; letter-spacing:1px; }
.business-grid { counter-reset:item; }
.business-item strong { font-size:25px; letter-spacing:-.07em; }
.business-item small { color:#69788b; font-size:14px; }
.business-item:hover strong,.business-item:focus-visible strong { color:var(--ap-orange); }

.feature { padding-left:clamp(20px,7vw,144px); padding-right:clamp(20px,7vw,144px); }
.feature-platform { display:grid; grid-template-columns:minmax(300px,.82fr) minmax(620px,1.18fr); gap:80px; min-height:760px; align-items:center; background:#e8f4fb; }
.feature-copy { position:relative; z-index:2; }
.feature-copy h2,.section-head h2,.zone-panel h2,.wellness-copy h2 { font-size:clamp(42px,4.4vw,69px); line-height:1.1; letter-spacing:-.075em; }
.feature-copy>p,.section-head>p,.zone-panel>p,.wellness-copy>p { font-size:18px; line-height:1.75; color:#52657b; }
.eyebrow { color:var(--ap-orange); font-size:12px; letter-spacing:1.5px; font-weight:800; }
.platform-visual { position:relative; width:calc(100% + clamp(20px,7vw,144px)); margin-right:calc(-1 * clamp(20px,7vw,144px)); }
.platform-visual img { width:100%; }
.inline-actions { margin-top:36px; display:flex; align-items:center; gap:28px; }

.feature-health { padding-top:0; padding-bottom:0; background:#f8fbff; }
.health-intro { display:grid; grid-template-columns:minmax(340px,.78fr) minmax(650px,1.22fr); min-height:720px; gap:56px; align-items:center; }
.health-intro .section-head { position:relative; z-index:2; }
.health-media { width:calc(100% + clamp(20px,7vw,144px)); margin-right:calc(-1 * clamp(20px,7vw,144px)); }
.health-media img { -webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%); mask-image:linear-gradient(90deg,transparent 0%,#000 18%,#000 100%); }
.care-flow { width:100%; margin:0; padding:0; display:grid; grid-template-columns:repeat(5,1fr); background:#071a34; color:#fff; counter-reset:care; }
.care-flow li { min-height:206px; padding:26px clamp(15px,2vw,36px); border-right:1px solid rgba(255,255,255,.16); list-style:none; }
.care-flow li:last-child { border:0; }
.care-flow li span { display:block; color:#90bfe8; font-size:12px; font-weight:800; letter-spacing:1.2px; }
.care-flow li strong { display:block; margin-top:56px; font-size:23px; letter-spacing:-.07em; }
.care-flow li small { display:block; margin-top:9px; color:#b6c6d5; font-size:14px; }
.solution-list { max-width:none; margin:0; padding:48px clamp(20px,7vw,144px) 18px; display:flex; flex-wrap:wrap; gap:10px; background:#f8fbff; }
.solution-list span { padding:9px 14px; border:1px solid #c7d3e2; border-radius:100px; font-size:14px; }
.section-actions { padding:15px clamp(20px,7vw,144px) 80px; background:#f8fbff; }

.feature-zone { position:relative; min-height:780px; display:grid; grid-template-columns:minmax(360px,.8fr) minmax(700px,1.2fr); gap:58px; align-items:center; background:#061a37; overflow:hidden; }
.feature-zone::before { content:""; position:absolute; width:68vw; height:68vw; left:-44vw; bottom:-45vw; border:1px solid rgba(43,204,255,.46); border-radius:50%; box-shadow:0 0 95px rgba(77,93,255,.22); }
.feature-zone .zone-panel { position:relative; z-index:1; padding:0; color:#fff; }
.feature-zone .zone-panel .eyebrow { color:#ff8a65; }.feature-zone .zone-panel p { color:#c6d7e8; }.feature-zone .text-link { color:#fff; }
.feature-zone .model-grid { position:relative; z-index:1; width:calc(100% + clamp(20px,7vw,144px)); height:auto; margin-right:calc(-1 * clamp(20px,7vw,144px)); display:block; }
.feature-zone .store-composite { margin:0; border:0; background:transparent; overflow:visible; }
.feature-zone .store-composite img { width:100%; height:auto; max-height:none; object-fit:contain; border:0; border-radius:0; background:transparent; }

.feature-wellness { min-height:780px; background:#edf1ee; }
.feature-wellness::after { background:linear-gradient(90deg,#edf1ee 0%,rgba(237,241,238,.96) 28%,rgba(237,241,238,.58) 48%,rgba(237,241,238,0) 72%); }
.wellness-copy { width:min(45%,620px); }.wellness-copy p { color:#435b58; }.wellness-targets span { border-radius:0; background:rgba(255,255,255,.74); }
.news { padding:150px clamp(20px,7vw,144px); background:#fff; }.news-empty { max-width:none; border-top:1px solid #9aa7b6; border-bottom:1px solid #d0d8e0; border-radius:0; padding:32px 0; background:transparent; display:grid; grid-template-columns:180px 1fr 1fr; align-items:center; text-align:left; }.news-empty strong { font-size:36px; }.news-empty p { margin:0; }
.partner { padding:155px clamp(20px,7vw,144px); text-align:left; background:#f15a24; }.partner h2 { font-size:clamp(48px,5.2vw,80px); letter-spacing:-.08em; }.partner-types { justify-content:flex-start; }.partner-types span { border-radius:0; background:transparent; border-bottom:1px solid rgba(255,255,255,.5); }
.site-footer { padding-left:clamp(20px,7vw,144px); padding-right:clamp(20px,7vw,144px); background:#06162f; color:#fff; }

@media (max-width:720px) {
  .site-header { height:76px; background:linear-gradient(180deg,rgba(3,15,33,.8),transparent); }.header-inner { width:calc(100% - 40px); }.brand-word{font-size:22px}.brand-mark{width:25px;height:25px}.menu-toggle{display:block;color:#fff}.main-nav{background:#06162f}
  .hero { height:760px; min-height:760px; }.hero-image { object-position:71% center; }.hero-scrim { background:linear-gradient(180deg,rgba(4,21,47,.74),rgba(4,21,47,.2) 40%,rgba(4,21,47,.9) 100%); }.hero-inner { width:calc(100% - 40px); padding-top:138px; }.hero h1 { font-size:54px; }.hero-copy { font-size:16px; }.hero::after{right:20px;bottom:22px}
  .business { padding:90px 20px 0; }.business-heading { display:block; }.business-heading h2 { margin-top:24px; font-size:45px; }.business-grid { grid-template-columns:1fr 1fr; margin-top:56px; }.business-item { min-height:190px; padding:20px 12px 22px 0; }.business-item:nth-child(even){padding-left:14px}.business-item strong{font-size:21px}
  .feature-platform,.health-intro,.feature-zone { display:block; min-height:0; padding:90px 20px; }.feature-platform { background:#e8f4fb; }.platform-visual,.health-media,.feature-zone .model-grid{width:calc(100% + 40px);margin:46px -20px 0}.feature-copy h2,.section-head h2,.zone-panel h2,.wellness-copy h2{font-size:43px}.feature-copy>p,.section-head>p,.zone-panel>p,.wellness-copy>p{font-size:16px}.inline-actions{align-items:flex-start;flex-direction:column;gap:20px}
  .health-intro{padding-bottom:0}.health-media{margin-top:38px}.health-media img{-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 13%,#000 100%);mask-image:linear-gradient(180deg,transparent 0,#000 13%,#000 100%)}.care-flow{grid-template-columns:1fr 1fr}.care-flow li{min-height:150px;padding:22px 20px}.care-flow li strong{margin-top:34px;font-size:19px}.solution-list{padding:34px 20px 10px}.section-actions{padding:20px 20px 64px}
  .feature-zone{background:#061a37}.feature-zone .model-grid{margin-top:42px}.feature-zone .store-composite img{width:100%;height:auto}.feature-wellness{min-height:0}.wellness-copy{width:auto}.news{padding:92px 20px}.news-empty{display:block;padding:26px 0}.news-empty strong{display:block;margin:16px 0;font-size:31px}.partner{padding:94px 20px}.partner h2{font-size:49px}.partner-types{justify-content:flex-start}.site-footer{padding:44px 20px}
}
/* Larger Korean display text needs a little more vertical room. */
.hero h1{line-height:1.14}.business-heading h2{line-height:1.15}.feature-copy h2,.section-head h2,.zone-panel h2,.wellness-copy h2{line-height:1.16}.partner h2{line-height:1.15}
