/* Shared, quiet studio frame. Specimens keep their own type and composition. */
:root { --paper:#fffdfa; --cream:#fffdfa; --ink:#173f35; --muted:#686c61; --line:#d5d9cf; --hot:#ee5b3a; --accent-text:#aa3924; }
html { background:var(--paper); scroll-padding-top:24px; }
body { margin:0; min-width:320px; color:var(--ink); background:var(--paper); font-family:"Yossi",Arial,sans-serif; }
::selection { background:var(--ink); color:var(--paper); }
button,input,textarea,select { font:inherit; }
:focus-visible { outline:2px solid var(--accent-text); outline-offset:5px; }
.shell { width:min(1280px,calc(100% - 80px)); margin-inline:auto; }
.skip-link { position:fixed; top:10px; right:10px; z-index:2000; padding:12px 18px; background:var(--ink); color:var(--paper); transform:translateY(-160%); }
.skip-link:focus { transform:translateY(0); }
.ai-workbench,.fiber-outline,.system-status,.hero-telemetry,.workbench-console,.font-system-meta,.decoration-toggle { display:none; }
.site-header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px 32px; min-height:102px; margin-top:0; padding:20px 0; border:0; border-bottom:1px solid var(--line); background:transparent; overflow:visible; }
.site-header::before,.site-header::after,.hero::before,.hero::after,.page-hero::before,.font-story-hero::before,.paper-divider::after { content:none; }
.point-wordmark { flex-shrink:0; }
.point-wordmark img,.shop-logo img { display:block; width:125px!important; height:auto; }
.nav { display:flex; align-items:center; gap:20px; font-size:16px; font-weight:400; }
.nav a { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:8px 0; text-decoration:none; }
.nav a:hover,.nav a[aria-current="page"] { color:var(--accent-text); text-decoration:underline; text-underline-offset:6px; }
.nav .cart-link { border:0; background:transparent; padding:8px 0; clip-path:none; border-radius:0; }
.cart-link::before { content:none; }
.cart-link span { background:transparent; color:inherit; min-width:0; font-size:13px; }
.cart-link span[hidden] { display:none!important; }
.eyebrow { font:400 13px/1.5 "Yossi",Arial,sans-serif; letter-spacing:0; color:var(--muted); margin:0 0 20px; }
.hero { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,.65fr); align-items:center; gap:clamp(48px,7vw,100px); min-height:0; padding:82px 0 88px; border:0; background:transparent; overflow:visible; }
.hero h1 { margin:0; font:400 clamp(72px,7.5vw,112px)/1.04 "Point","Yossi",sans-serif; letter-spacing:0; text-wrap:balance; }
.hero h1 span { color:var(--hot); }
.hero-text { max-width:560px; margin:30px 0 0; font-size:20px; line-height:1.65; text-wrap:pretty; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px; margin-top:32px; }
.cta,.font-story-button { min-height:48px; display:inline-flex; align-items:center; justify-content:center; padding:12px 20px; border:1px solid var(--ink); border-radius:0; clip-path:none; box-shadow:none; font:400 16px/1.4 "Yossi",Arial,sans-serif; text-decoration:none; transition:background .15s,color .15s; }
.cta:hover,.font-story-button:hover { transform:none; color:var(--paper); background:var(--ink); }
.cta.primary,.font-story-button.primary { background:var(--ink); border-color:var(--ink); color:var(--paper); }
.cta.primary:hover,.font-story-button.primary:hover { background:#285547; }
.hero-actions .cta:last-child { border:0; background:transparent; color:var(--ink); padding-inline:0; font-size:16px; text-decoration:underline; text-underline-offset:6px; }
.hero-side { align-self:center; width:100%; max-width:360px; margin:0; padding:32px 0; border:0; border-block:1px solid var(--line); background:none; box-shadow:none; }
.hero-side p { font:400 clamp(32px,3.4vw,48px)/1.23 "Bonobo","Yossi",sans-serif; letter-spacing:0; }
.hero-side small { margin-top:28px; color:var(--muted); font-size:14px; }
.ticker { display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px; padding:20px 0; border:0; border-block:1px solid var(--line); font:400 14px/1.5 "Yossi",Arial,sans-serif; letter-spacing:0; }
.ticker span::before { content:none; }
.catalog { padding:80px 0; }
.section-top { display:flex; align-items:flex-end; justify-content:space-between; gap:24px; margin-bottom:36px; }
.section-top h2 { margin:0; font:400 clamp(36px,4vw,58px)/1.15 "Point","Yossi",sans-serif; letter-spacing:0; }
.section-top p:not(.eyebrow) { font-size:18px; line-height:1.6; color:var(--muted); }
.font-count { font-size:14px; align-self:flex-end; }
.page-hero { min-height:0; padding:56px 0; gap:48px; border:0; border-bottom:1px solid var(--line); background:transparent; }
.page-hero h1 { font:400 clamp(42px,5vw,72px)/1.16 "Point","Yossi",sans-serif; letter-spacing:0; }
.page-hero p:not(.eyebrow) { font-size:20px; line-height:1.65; }
.paper-divider { display:none; }
.tester { padding:32px 0 80px; }
.tester-layout { grid-template-columns:280px minmax(0,1fr); gap:40px; }
.tester-controls { padding:0 0 0 24px; border:0; border-inline-end:1px solid var(--line); background:none; box-shadow:none; clip-path:none; }
.tester-controls h2 { display:block; min-height:0; padding:0; margin:0 0 24px; font:400 22px/1.4 "Yossi",Arial,sans-serif; color:var(--ink); background:none; text-align:start; letter-spacing:0; }
.tester-controls select,.tester-controls input[type="color"] { border:1px solid var(--line); }
.tester-mode { justify-content:flex-end; }
.tester-mode button { border:0; padding:8px 14px; background:transparent; }
.tester-mode button[aria-pressed="true"] { background:transparent; color:var(--ink); text-decoration:underline; text-underline-offset:6px; }
.tester-stage { min-width:0; min-height:550px; border:0; padding:0; background:var(--paper); box-shadow:none; clip-path:none; }
.tester-stage-bar { padding:12px 0 20px; border-bottom:1px solid var(--line); }
.tester-preview { padding:32px 0; overflow-wrap:anywhere; min-height:330px; }
.tester-preview:focus { box-shadow:none; }
.tester-presets button,.cart-action,.checkout-link { clip-path:none; border-width:1px; }
.font-story-hero { min-height:0; padding:64px 0; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:80px; align-items:center; background:none; border:0; border-bottom:1px solid var(--line); }
.font-story-breadcrumb { margin-bottom:36px; font-size:14px; font-weight:400; }
.font-story-kicker { display:none; }
.font-story-title { font-family:var(--story-font),sans-serif; font-size:clamp(72px,8vw,120px); line-height:1.2; letter-spacing:0; font-synthesis:none; }
.font-story-hero-sample { margin:20px 0; font-family:var(--story-font),sans-serif; font-size:clamp(28px,3.6vw,48px); line-height:1.5; letter-spacing:0; font-synthesis:none; overflow-wrap:anywhere; }
.font-story-english { font-family:var(--story-font),sans-serif; font-size:24px; line-height:1.5; }
.font-story-tagline { margin-top:24px; font-size:22px; line-height:1.55; }
.font-story-lead { font-size:19px; line-height:1.75; }
.font-story-license { font-size:13px; line-height:1.6; color:var(--muted); }
.font-story-facts { border-color:var(--line); }
.font-story-fact,.font-story-fact:first-child { border:0; padding:24px 0; }
.font-story-fact strong { font-size:17px; line-height:1.6; }
.font-story-section { padding:72px 0; gap:60px; }
.font-story-section h2,.font-story-specimen h2 { font-family:"Point","Yossi",sans-serif; font-size:clamp(32px,3.5vw,48px); line-height:1.25; letter-spacing:0; }
.font-story-index { font-size:13px; font-weight:400; color:var(--muted); letter-spacing:0; }
.font-story-copy p { font-size:19px; line-height:1.8; }
.font-story-quote { margin-inline:auto; padding:56px 0; font:400 clamp(28px,3.8vw,50px)/1.5 var(--story-font),sans-serif; letter-spacing:0; border-color:var(--line); }
.font-story-quote::before { content:none; }
.font-story-specimen { padding:64px 0; border-color:var(--line); }
.font-story-specimen-box { padding:32px 0; min-height:200px; border:0; font-size:clamp(32px,5vw,68px); line-height:1.5; letter-spacing:0; font-synthesis:none; overflow-wrap:anywhere; }
.font-story-next { padding:56px 0; }
.font-story-next a { line-height:1.2; letter-spacing:0; }
.font-story-next > .font-story-button { font:400 16px/1.4 "Yossi",sans-serif; }
.store-product { padding-block:56px; }
.store-product h2 { font:400 clamp(32px,3.5vw,46px)/1.25 "Point","Yossi",sans-serif; }
.store-product-dock { box-shadow:none; border-color:var(--line); }
.store-product-dock>a { text-decoration:none; }
.store-product-dock>a:first-of-type { background:var(--ink); border-color:var(--ink); }
.info-grid article,.cart-item,.cart-empty,.cart-summary { clip-path:none; box-shadow:none; border:1px solid var(--line); }
.page-content h2 { font:400 clamp(32px,4vw,52px)/1.25 "Point","Yossi",sans-serif; letter-spacing:0; }
.site-footer { position:relative; padding:0; color:var(--paper); background:var(--ink); border:0; }
.footer-inner { padding:56px 0 40px; }
.footer-logo img { width:150px!important; }
.footer-copy { color:#d5ded7; font-size:16px; }
.footer-links { gap:20px; font-size:15px; line-height:1.7; }
.footer-links a { min-height:44px; display:inline-flex; align-items:center; text-decoration:none; }
.footer-links a:hover { text-decoration:underline; text-underline-offset:5px; }
.footer-base { padding:20px 0 28px; border-color:#416357; color:#c6d3cb; }
@media(max-width:800px) {
  .shell { width:calc(100% - 40px); }
  .site-header { gap:14px; padding-block:18px; }
  .point-wordmark img,.shop-logo img { width:108px!important; }
  .site-header .nav { width:100%; order:2; justify-content:space-between; gap:6px; font-size:14px; }
  .site-header .nav a { padding:6px 0; }
  .hero { grid-template-columns:1fr; gap:36px; padding:48px 0; }
  .hero h1 { font-size:clamp(58px,10vw,86px); }
  .hero-text { font-size:18px; margin-top:24px; }
  .hero-side { max-width:none; padding:24px 0 0; border-bottom:0; }
  .hero-side p { max-width:440px; font-size:30px; line-height:1.3; }
  .hero-side p br { display:none; }
  .hero-side small { margin-top:16px; }
  .ticker { justify-content:flex-start; gap:12px 24px; font-size:13px; }
  .catalog { padding:48px 0; }
  .section-top { display:block; }
  .font-count { display:block; margin-top:20px; }
  .page-hero { padding:40px 0; gap:20px; }
  .page-hero p:not(.eyebrow) { font-size:18px; }
  .tester { padding:24px 0 56px; }
  .tester-layout { grid-template-columns:1fr; gap:32px; }
  .tester-controls { border:0; padding:0; }
  .tester-stage { padding:0; min-height:400px; }
  .tester[data-layout="compact"] .tester-advanced[open] { max-height:none; overflow:visible; }
  .font-story-hero { grid-template-columns:1fr; padding:40px 0; gap:28px; }
  .font-story-hero > div:first-of-type { display:block; }
  .font-story-breadcrumb { margin-bottom:24px; }
  .font-story-title { font-size:76px; }
  .font-story-hero-sample { font-size:30px; }
  .font-story-tagline { font-size:21px; }
  .font-story-lead { font-size:18px; }
  .font-story-facts { gap:0 20px; }
  .font-story-section { grid-template-columns:1fr; gap:24px; padding:48px 0; }
  .font-story-section-heading { position:static; }
  .font-story-copy p { font-size:18px; }
  .font-story-specimen { padding:48px 0; }
  .font-story-specimen-box { font-size:32px; }
  .footer-inner { padding:40px 0 24px; gap:24px; }
  .footer-links { gap:8px 20px; }
}
@media(max-width:380px) {
  .shell { width:calc(100% - 32px); }
  .site-header .nav { font-size:12px; gap:4px; }
  .hero h1 { font-size:54px; }
  .hero-actions { gap:16px; }
  .cta { padding-inline:14px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition-duration:.01ms!important; } }
