:root{color-scheme:dark;--ink:#f7f8ff;--muted:#b6bdd0;--bg:#090b1b;--panel:#10162b;--line:#303753;--pink:#f84cda;--cyan:#53e1ed;--lime:#d4ed84;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-size:16px;line-height:1.55}a{color:inherit}a:focus-visible{outline:3px solid var(--cyan);outline-offset:5px;border-radius:3px}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}
    header{border-bottom:1px solid #ffffff22;background:#090b1bee}.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:block;flex:none;width:clamp(180px,21vw,240px);text-decoration:none}.wordmark img{display:block;width:100%;height:auto}.wordmark:hover{filter:brightness(1.2)}nav{display:flex;gap:clamp(16px,3vw,36px);align-items:center}nav a{text-decoration:none;color:#dce1ef;font-weight:600;font-size:.9rem}nav a:hover{color:var(--cyan)}
    .hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 75% 40%,#173767 0%,transparent 39%),radial-gradient(ellipse at 28% 40%,#4b164f 0%,transparent 38%),var(--bg)}.hero:after{content:"";position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,var(--pink),var(--cyan),transparent);opacity:.65}.hero-grid{min-height:570px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3vw;padding-block:68px 76px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.78rem;font-weight:800;color:var(--cyan);margin:0 0 17px}.hero h1{font-size:clamp(2.9rem,5.6vw,5.7rem);line-height:1.03;letter-spacing:-.06em;margin:0 0 26px;max-width:660px}.hero h1 em{font-style:normal;background:linear-gradient(100deg,#ff70dc 10%,#8cbffb 60%,#64edda);background-clip:text;color:transparent}.hero .intro{font-size:clamp(1.1rem,1.4vw,1.3rem);color:#d4d9e9;max-width:520px;margin:0 0 31px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 20px;border:1px solid #99f2f1;border-radius:7px;text-decoration:none;font-weight:800;background:#8cf0ed;color:#08131a}.button:hover{background:white}.subtle{display:block;color:var(--muted);font-size:.88rem;margin-top:16px}.logo-frame{position:relative;display:grid;place-items:center}.logo-frame img{display:block;width:min(100%,550px);height:auto;-webkit-mask-image:url("/assets/fig-and-sons-glow-cutout.webp");mask-image:url("/assets/fig-and-sons-glow-cutout.webp");-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
    section.categories{padding:82px 0 94px}.section-top{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}.section-top h2,.about h2{font-size:clamp(2rem,3.3vw,3.1rem);line-height:1.14;letter-spacing:-.04em;margin:0}.section-top p{color:var(--muted);max-width:410px;margin:0}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{min-height:290px;padding:34px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(145deg,#1a1730,#111729 72%);position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:end}.card:nth-child(2){background:linear-gradient(145deg,#102c3b,#101827 72%)}.card:before{content:"";position:absolute;width:260px;height:260px;border:1px solid #f84cda77;border-radius:50%;right:-60px;top:-130px;box-shadow:0 0 70px #f84cda28}.card:nth-child(2):before{border-color:#53e1ed88;box-shadow:0 0 70px #53e1ed22}.card .index{position:absolute;top:30px;left:34px;color:#c2c9d8;font-size:.8rem;font-weight:800;letter-spacing:.16em}.card h3{font-size:clamp(1.6rem,2.5vw,2.35rem);line-height:1.12;margin:0 0 12px;letter-spacing:-.035em}.card p{margin:0;color:#c6cde0;max-width:400px}.card .rule{width:42px;height:3px;background:var(--pink);margin-bottom:19px}.card:nth-child(2) .rule{background:var(--cyan)}
    .about{border-top:1px solid var(--line);background:#0e1325;padding:75px 0 84px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.about p{font-size:1.07rem;color:#c7cede;max-width:520px}.about .note{border-left:3px solid var(--cyan);padding:10px 0 10px 22px;color:#e7ecfb}.small-label{color:var(--lime);font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:.78rem}footer{padding:34px 0;color:#aeb8ce}.footer-line{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:27px;font-size:.88rem}footer p{margin:0}
    @media(max-width:760px){.nav{min-height:70px;flex-wrap:wrap;padding-block:12px}nav{gap:16px;flex-wrap:wrap}nav a{font-size:.84rem}.hero-grid{grid-template-columns:1fr;min-height:0;padding-block:45px 55px;gap:12px}.hero h1{max-width:620px}.logo-frame{order:-1}.logo-frame img{width:min(90vw,480px)}section.categories{padding:62px 0}.section-top,.about-grid{display:block}.section-top p{margin-top:18px}.cards{grid-template-columns:1fr}.card{min-height:255px}.about{padding:60px 0}.footer-line{display:block}.footer-line p+p{margin-top:8px}}
    @media(max-width:430px){.wrap{width:min(100% - 32px,1160px)}.nav{gap:6px}.wordmark{width:190px}nav{gap:12px}.card{padding:27px}.card .index{left:27px}}
  
    .skip-link{position:absolute;top:8px;left:16px;z-index:10;transform:translateY(-200%);background:var(--cyan);color:#08131a;padding:12px 18px;font-weight:700}.skip-link:focus{transform:translateY(0)}
    nav a{display:inline-flex;align-items:center;min-height:44px}.eyebrow,.small-label,.card .index{font-size:.875rem}
    .footer-contact{padding-top:18px;font-size:.9rem}.footer-contact a{display:inline-block;padding-block:6px;text-underline-offset:4px;overflow-wrap:anywhere}
    .contact-email{margin-bottom:20px;max-width:100%}.logo-frame{min-width:0}.story-copy{min-width:0}
    @media(max-width:760px){nav a{font-size:.875rem}.hero .logo-frame img{width:min(100%,320px)}.hero-grid{gap:28px}.hero .logo-frame{order:0}.hero h1{font-size:clamp(2.6rem,10vw,4rem)}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
    nav a[aria-current="page"]{color:var(--cyan)}
    .shop-feature{position:relative;overflow:hidden;padding:70px 0;border-block:1px solid #ffffff20;background:radial-gradient(ellipse at 88% 40%,#0d5c7080,transparent 43%),linear-gradient(120deg,#14102e,#101e35 75%)}
    .shop-feature:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(var(--pink),var(--cyan));box-shadow:0 0 27px var(--pink)}
    .shop-feature-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);align-items:center;gap:42px}
    .shop-feature h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.06;letter-spacing:-.05em;margin:0 0 20px}
    .shop-feature p:not(.eyebrow){color:#d4d9e9;font-size:1.08rem;max-width:58ch;margin:0 0 25px}
    .shop-feature .button{background:transparent;color:var(--ink);border-color:var(--cyan)}.shop-feature .button:hover{background:var(--cyan);color:#08131a}

    @media(max-width:760px){.shop-feature{padding:54px 0}.shop-feature-grid{grid-template-columns:1fr}}
  
    .shop-hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 80% 25%,#184d7180,transparent 40%),radial-gradient(ellipse at 0 70%,#64165b70,transparent 45%),var(--bg);padding:clamp(60px,8vw,110px) 0 90px}
    .shop-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(32px,6vw,90px)}
    .shop-hero h1{font-size:clamp(3.1rem,6.7vw,6.5rem);line-height:.98;letter-spacing:-.065em;margin:0 0 26px}.shop-hero h1 em{font-style:normal;background:linear-gradient(100deg,#ff70dc,#8cbffb 58%,#64edda);background-clip:text;color:transparent}
    .shop-hero .intro{max-width:55ch;color:#d4d9e9;font-size:1.125rem;margin:0 0 27px}.shop-hero .subtle{max-width:55ch}
    .shop-display{position:relative;border:1px solid #4a6696;border-radius:22px;min-height:410px;padding:35px;background:linear-gradient(155deg,#221938,#101c31 75%);box-shadow:0 25px 75px #0007,inset 0 0 60px #1c3c7240;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
    .shop-display:before{content:"";position:absolute;width:360px;height:360px;right:-130px;top:-135px;border:1px solid #54e2eb88;border-radius:50%;box-shadow:0 0 95px #55dfe63c,inset 0 0 45px #ef55d427}.shop-display:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:linear-gradient(90deg,var(--pink),var(--cyan))}
    .shop-display .display-top{position:relative;color:var(--cyan);letter-spacing:.22em;font-weight:800;text-transform:uppercase;font-size:.875rem}.shop-display .display-main{position:relative;font-size:clamp(3.2rem,5vw,5.8rem);line-height:.92;letter-spacing:-.07em;font-weight:900;text-shadow:0 0 45px #f84cda55}.shop-display .display-main span{color:var(--pink)}.shop-display .display-bottom{position:relative;color:#d0d8e9;font-size:.9rem;letter-spacing:.08em}
    .shop-note{border-top:1px solid var(--line);padding:54px 0 75px}.shop-note-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.shop-note h2{font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.14;letter-spacing:-.04em;margin:0 0 16px}.shop-note p{color:var(--muted);margin:0;max-width:52ch}.shop-note a{color:var(--cyan);text-underline-offset:4px}
    @media(max-width:760px){.shop-hero{padding:54px 0 68px}.shop-layout{grid-template-columns:1fr}.shop-display{min-height:260px}.shop-note-grid{grid-template-columns:1fr}}
  
    .story{padding-block:clamp(48px,8vw,100px);background:radial-gradient(ellipse at 90% 10%,#17376766,transparent 55%),radial-gradient(ellipse at 0% 30%,#4b164f55,transparent 55%)}
    .story-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(32px,5vw,72px);align-items:center}
    .story h1{font-size:clamp(2.7rem,5.1vw,4.8rem);line-height:1.08;letter-spacing:-.045em;margin:0 0 32px}
    .story-copy>p:not(.eyebrow){font-size:1.125rem;line-height:1.8;color:#d4d9e9;margin:0 0 24px;max-width:62ch}
    .story .logo-frame img{width:100%;max-width:480px}.story .button{margin-top:12px}
    .contact-email{display:inline-block;font-size:clamp(1.25rem,3vw,2rem);font-weight:750;overflow-wrap:anywhere;color:#8cf0ed;text-decoration-thickness:2px;text-underline-offset:6px}.contact-email:hover{color:white}
    @media(max-width:760px){.story-layout{grid-template-columns:1fr}.story .logo-frame{order:0}.story .logo-frame img{max-width:320px}}
  

/* Site-wide refinements: navigation, readable content, and responsive spacing. */
body{min-height:100vh;min-height:100svh;display:flex;flex-direction:column}
main{flex:1}img{max-width:100%}h1,h2,h3{overflow-wrap:break-word;text-wrap:balance}
p{overflow-wrap:break-word}.hero-grid>div,.shop-layout>div,.shop-feature-grid>div{min-width:0}
.nav{gap:20px;flex-wrap:wrap}.nav nav{flex-wrap:wrap}.wordmark{width:clamp(180px,21vw,230px)}
nav{gap:clamp(16px,2.6vw,32px)}nav a{font-size:.9375rem;border-bottom:2px solid transparent;padding-top:2px}
nav a[aria-current="page"]{border-bottom-color:var(--cyan)}
.button{max-width:100%;text-align:center;line-height:1.45;transition:background-color .18s,color .18s,box-shadow .18s}
.button:hover{box-shadow:0 0 24px #53e1ed24}
.button-secondary{background:transparent;color:var(--ink);border-color:var(--line)}
.button-secondary:hover{background:#1b243d;color:var(--ink)}
.button-group{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.hero .logo-frame img{width:min(100%,550px)}
.shop-feature{padding-block:58px;background:radial-gradient(ellipse at 85% 50%,#12455d65,transparent 48%),linear-gradient(120deg,#14102e,#101827 75%)}
.shop-feature-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:36px}

.card{justify-content:flex-start;min-height:270px}.card .index{position:static}.card .rule{margin-top:32px}.card:before{pointer-events:none}
.section-top .eyebrow{color:var(--cyan);margin:0 0 16px}.section-top>p{max-width:42ch}
.shop-hero h1{font-size:clamp(2.7rem,6.2vw,5.8rem);line-height:1.06;letter-spacing:-.05em}
.shop-display .display-main{line-height:1.04;letter-spacing:-.045em}
.shop-display .display-top{max-width:25ch;line-height:1.65;letter-spacing:.13em}
.shop-display .display-bottom{line-height:1.6}.shop-note .eyebrow{color:var(--cyan);margin:0 0 16px}
.story-copy .contact-help{margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:12px;background:#111a2c}
.contact-help h2{font-size:1.125rem;margin:0 0 10px}.contact-help p{font-size:1rem;line-height:1.7;color:var(--muted);margin:0}.contact-help a{color:var(--cyan);text-underline-offset:4px}
.footer-links{display:flex;gap:10px 24px;flex-wrap:wrap;padding-bottom:22px}
.footer-links a{min-height:44px;display:inline-flex;align-items:center;font-size:.9375rem;text-underline-offset:5px;text-decoration-color:#66718d}
.footer-links a:hover{color:var(--cyan)}.footer-line{padding-top:22px}.footer-contact{display:flex;gap:6px 22px;flex-wrap:wrap;align-items:center}
.footer-contact a{min-height:44px;display:inline-flex;align-items:center}
@media(max-width:760px){
 .nav{padding-block:12px;gap:6px;justify-content:flex-start}.wordmark{width:205px}
 .nav nav{width:100%;gap:8px;justify-content:space-between}.nav nav a{font-size:.9375rem}
 .hero-grid{gap:28px;padding-block:40px 48px}.hero .logo-frame{order:0}.hero .logo-frame img{width:min(100%,340px)}
 .hero h1{font-size:clamp(2.6rem,10vw,4rem)}.hero .intro{font-size:1.125rem}
 .shop-feature{padding-block:42px}.shop-feature-grid{grid-template-columns:1fr;gap:24px}
 .shop-feature h2{font-size:clamp(2rem,8vw,3rem)}.shop-feature p:not(.eyebrow){font-size:1rem}
 .story h1{font-size:clamp(2.35rem,9vw,3.5rem)}.story-copy>p:not(.eyebrow){font-size:1.0625rem;line-height:1.75}
 .shop-display{min-height:285px;padding:28px}.shop-display .display-main{font-size:clamp(2.8rem,11vw,4rem)}
 .card{min-height:0;padding:28px}.footer-links{gap:4px 20px}.footer-contact{display:block}
}
@media(max-width:360px){.nav nav a{font-size:.875rem}.nav nav{gap:6px}.button{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media(forced-colors:active){.hero h1 em,.shop-hero h1 em{color:CanvasText;background:none}.button{border:1px solid ButtonText}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:760px){.footer-contact>span{display:block}.footer-contact>a{margin-top:4px}}

/* Compact shopping banner: one primary logo remains in the homepage hero. */
.shop-feature{padding-block:36px}
.shop-feature-grid{grid-template-columns:minmax(0,1fr) auto;gap:32px}
.shop-feature .eyebrow{margin-bottom:10px}
.shop-feature h2{font-size:clamp(2rem,3.1vw,2.75rem);line-height:1.12;margin-bottom:12px}
.shop-feature p:not(.eyebrow){font-size:1rem;max-width:58ch;margin:0}
.shop-feature-action{text-align:center}
.shop-feature-action .subtle{margin-top:10px}
@media(max-width:760px){.shop-feature{padding-block:30px}.shop-feature-grid{grid-template-columns:1fr;gap:22px}.shop-feature-action{text-align:left}}
