:root { --cream:#faf7ef; --olive:#303a2a; --terracotta:#ad4f2d; --oat:#eae2d3; --sage:#dce3d4; --muted:#64675c; --shell:min(1280px,calc(100% - 96px)); color-scheme:light; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:110px; }
body { margin:0; background:var(--cream); color:var(--olive); font-family:Arial,Helvetica,sans-serif; line-height:1.65; }
img { max-width:100%; display:block; }
a { color:inherit; text-underline-offset:5px; }
a,button { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible { outline:3px solid var(--terracotta); outline-offset:6px; }
button { font:inherit; }
h1,h2,h3,p,figure { margin:0; }
h1,h2,h3 { font-family:Georgia,'Times New Roman',serif; font-weight:400; line-height:1.08; letter-spacing:-.035em; }
em { font-weight:400; color:var(--terracotta); }
.page-shell { width:var(--shell); margin-inline:auto; }
.skip-link { position:fixed; top:-100px; left:20px; z-index:100; background:var(--cream); padding:12px 20px; }
.skip-link:focus { top:12px; }
.site-header { position:sticky; top:0; z-index:50; background:rgba(250,247,239,.97); border-bottom:1px solid #303a2a1a; backdrop-filter:blur(14px); }
.site-nav { display:flex; align-items:center; justify-content:space-between; gap:30px; min-height:92px; }
.site-brand { font-family:Georgia,'Times New Roman',serif; font-size:31px; line-height:1.2; font-weight:700; letter-spacing:-1.3px; text-decoration:none; white-space:nowrap; }
.site-brand span { color:var(--terracotta); }
.nav-links { display:flex; align-items:center; gap:27px; }
.nav-links>a { font-size:13px; font-weight:600; text-decoration:none; white-space:nowrap; }
.nav-links>a:not(.brand-button):hover { color:var(--terracotta); }
.brand-button { display:inline-flex; align-items:center; justify-content:center; gap:30px; background:var(--olive); color:#fff; padding:16px 24px; min-height:54px; border-radius:5px; text-decoration:none; font-size:14px; font-weight:600; transition:background .2s; }
.brand-button:hover { background:#46513e; }
.brand-button-small { padding:12px 17px; min-height:44px; gap:20px; }
.nav-toggle { display:none; }
.hero { display:grid; grid-template-columns:.85fr 1.15fr; gap:55px; align-items:center; padding-block:70px 95px; }
.eyebrow { display:block; color:var(--terracotta); font-size:11px; line-height:1.6; font-weight:700; letter-spacing:1.7px; margin-bottom:21px; }
.hero h1 { font-size:clamp(56px,5.6vw,81px); line-height:1.035; letter-spacing:-3px; }
.hero-lede { font-size:17px; line-height:1.8; color:var(--muted); max-width:380px; margin-block:25px 29px; }
.launch-note { display:flex; align-items:center; gap:9px; font-size:11px; color:var(--muted); margin-top:19px; }
.launch-note>span { width:6px; height:6px; border-radius:50%; background:#788666; }
.hero-art { position:relative; margin-bottom:12px; }
.hero-art>img { width:100%; height:610px; object-fit:cover; object-position:49% center; border-radius:110px 8px 8px 8px; }
.conversation-card { position:absolute; bottom:29px; left:-25px; display:flex; align-items:center; gap:19px; background:var(--cream); border:1px solid #fff9; border-radius:8px; padding:21px 27px; box-shadow:0 10px 35px #24271812; }
.conversation-label { display:block; font-size:9px; font-weight:700; letter-spacing:1.3px; margin-bottom:8px; color:var(--muted); }
.conversation-card p { font-family:Georgia,serif; font-size:21px; line-height:1.3; }
.voice-mark { display:flex; align-items:center; gap:3px; width:39px; height:42px; justify-content:center; }
.voice-mark i { width:3px; background:var(--terracotta); height:12px; border-radius:4px; }
.voice-mark i:nth-child(2),.voice-mark i:nth-child(4) { height:23px; }
.voice-mark i:nth-child(3) { height:35px; }
.aixe-intro { background:var(--olive); color:var(--cream); }
.aixe-inner { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding-block:42px; }
.aixe-inner .eyebrow { color:#e7bea4; margin-bottom:10px; }
.aixe-inner h2 { max-width:480px; font-size:30px; line-height:1.2; }
.aixe-inner>p { align-self:center; color:#e0e4d9; font-size:14px; line-height:1.85; max-width:490px; }
.story-section { display:grid; grid-template-columns:1fr 1fr; align-items:center; column-gap:100px; padding-block:100px; }
.story-reverse .story-visual { order:2; }
.story-reverse .story-copy { order:1; }
.story-visual img { width:100%; height:auto; aspect-ratio:1.13; object-fit:cover; border-radius:7px; }
.image-caption { display:block; font-size:10px; letter-spacing:.35px; margin-top:15px; color:var(--muted); }
.story-copy h2 { font-size:clamp(40px,4vw,57px); margin-bottom:25px; }
.story-copy>p:not(.eyebrow):not(.detail-note) { font-size:15px; line-height:1.85; color:var(--muted); margin-bottom:15px; }
.section-number { padding-right:14px; margin-right:12px; border-right:1px solid #ad4f2d55; font-weight:400; }
.story-copy .eyebrow { font-size:10px; letter-spacing:1.25px; margin-bottom:20px; }
.story-copy blockquote { margin:27px 0 24px; border-left:2px solid #ad4f2d80; padding:2px 0 2px 19px; font-family:Georgia,serif; font-style:italic; font-size:21px; line-height:1.5; }
.text-link { font-size:12px; font-weight:700; text-decoration:none; border-bottom:1px solid #303a2a55; padding-bottom:6px; display:inline-block; }
.text-link span { margin-left:20px; }
.text-link:hover { color:var(--terracotta); }
.section-tint { background:#f0eadf; }
.section-sage { background:#e6eadf; }
.detail-note { font-size:11px; line-height:1.65; color:var(--muted); }
.list-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; }
.list-tags span { padding:6px 12px; border:1px solid #303a2a2a; border-radius:30px; font-size:11px; }
.closing-note { text-align:center; background:var(--oat); padding-block:65px; }
.closing-note h2 { font-size:clamp(36px,4vw,54px); line-height:1.16; }
.closing-note>div>p:not(.eyebrow) { font-size:14px; color:var(--muted); margin-block:23px; }
.closing-note .eyebrow { margin-bottom:17px; }
.site-footer { padding-top:65px; background:var(--olive); color:var(--cream); }
.footer-grid { display:grid; grid-template-columns:1.35fr 1fr 1fr 1fr; gap:45px; padding-bottom:54px; }
.site-footer .site-brand { font-size:29px; }
.site-footer .site-brand span { color:#dfaa8b; }
.footer-grid h2 { font-family:Arial,sans-serif; font-size:12px; font-weight:700; letter-spacing:0; margin:8px 0 22px; }
.footer-grid>div>a:not(.site-brand) { display:block; font-size:12px; color:#e0e4d9; text-decoration:none; margin-bottom:11px; }
.footer-grid>div>a:hover { text-decoration:underline; }
.footer-grid p { font-size:12px; line-height:1.85; color:#bdc6b7; margin-top:18px; }
.footer-status { display:inline-block; margin-top:22px; border:1px solid #faf7ef44; padding:4px 12px; border-radius:25px; font-size:10px; }
.footer-bottom { display:flex; justify-content:space-between; gap:20px; border-top:1px solid #faf7ef26; padding-block:22px; color:#bdc6b7; font-size:10px; }
.footer-bottom a { text-decoration:none; }
@media(min-width:1600px) { .hero { padding-block:85px 110px; } }
@media(max-width:1100px) {
 :root { --shell:calc(100% - 56px); }
 .nav-links { gap:16px; }.nav-links>a { font-size:12px; }.site-nav { gap:20px; }.site-brand { font-size:27px; }
 .hero { gap:35px; }.hero h1 { font-size:62px; }.hero-art>img { height:580px; }
 .story-section { gap:55px; padding-block:75px; }.footer-grid { gap:25px; }
}
@media(max-width:900px) {
 .site-nav { flex-wrap:wrap; min-height:80px; padding-block:19px; }
 .nav-toggle:not([hidden]) { display:flex; align-items:center; gap:14px; border:1px solid #303a2a40; border-radius:4px; background:transparent; color:var(--olive); padding:8px 13px; font-size:12px; cursor:pointer; }
 .menu-icon { font-size:17px; }.nav-links { width:100%; flex-wrap:wrap; gap:15px 24px; padding-block:8px; }
 .js-nav .nav-links { display:none; }.js-nav .nav-links.is-open { display:flex; align-items:stretch; flex-direction:column; gap:0; }
 .js-nav .nav-links a { padding:13px 9px; }.js-nav .nav-links .brand-button { margin-top:10px; }
 .hero { padding-block:45px 70px; gap:30px; grid-template-columns:1fr 1fr; }.hero h1 { font-size:52px; letter-spacing:-2px; }
 .hero .eyebrow { font-size:9px; letter-spacing:1.1px; }.hero-lede { font-size:15px; }
 .hero-art>img { height:520px; border-top-left-radius:80px; }.conversation-card { left:-16px; bottom:24px; padding:17px; gap:12px; }.conversation-card p { font-size:17px; }
 .story-section { gap:35px; }.story-copy h2 { font-size:39px; }.story-copy .eyebrow { letter-spacing:.6px; font-size:9px; }
 .aixe-inner { gap:35px; }.aixe-inner h2 { font-size:27px; }.footer-grid { grid-template-columns:1.2fr 1fr; gap:35px; }
}
@media(max-width:600px) {
 :root { --shell:calc(100% - 40px); }html { scroll-padding-top:90px; }.site-nav { min-height:75px; padding-block:16px; }.site-brand { font-size:27px; }
 .hero { grid-template-columns:1fr; padding-block:36px 58px; gap:34px; }.hero h1 { font-size:60px; line-height:1.02; letter-spacing:-2.6px; }.desktop-break { display:none; }
 .hero .eyebrow { font-size:9px; letter-spacing:1.4px; max-width:none; margin-bottom:20px; }.hero-lede { max-width:360px; margin-block:23px; }
 .hero-art>img { height:380px; border-top-left-radius:65px; object-position:48% center; }.hero-art { margin:0 0 12px 12px; }
 .conversation-card { bottom:-17px; left:-12px; padding:18px 22px; }.conversation-card p { font-size:19px; }.hero .brand-button { font-size:13px; }
 .aixe-inner { grid-template-columns:1fr; gap:20px; padding-block:35px; }.aixe-inner h2 { font-size:29px; max-width:330px; }.aixe-inner>p { font-size:13px; }
 .story-section { grid-template-columns:1fr; gap:31px; padding-block:55px; }.story-reverse .story-visual,.story-reverse .story-copy { order:initial; }
 .story-visual img { aspect-ratio:1.2; }.image-caption { font-size:9px; }.story-copy h2 { font-size:42px; margin-bottom:20px; }.story-copy .eyebrow { font-size:9px; margin-bottom:15px; }
 .story-copy>p:not(.eyebrow):not(.detail-note) { font-size:14px; }.story-copy blockquote { font-size:21px; margin-block:22px; }
 .closing-note { padding-block:48px; }.closing-note h2 { font-size:36px; }.closing-note>div>p:not(.eyebrow) { font-size:13px; }
 .site-footer { padding-top:45px; }.footer-grid { grid-template-columns:1fr 1fr; gap:35px 20px; padding-bottom:35px; }.footer-brand { grid-column:1 / -1; }
 .footer-bottom { flex-wrap:wrap; gap:14px; }.footer-bottom span:nth-child(2) { display:none; }
}
@media(max-width:360px) { .site-nav { gap:12px; }.site-nav .site-brand { font-size:23px; }.nav-toggle:not([hidden]) { padding:8px 10px; gap:10px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; }* { transition:none!important; } }
