:root { --teal:#1f5f4f; --teal-deep:#163f35; --cream:#f5efe3; --pearl:#fbf8f1; --gold:#c9a86a; --charcoal:#2c2c2c; --serif:'Fraunces',Georgia,serif; --sans:'Jost',system-ui,sans-serif; }
:focus-visible { outline:3px solid var(--gold); outline-offset:5px; }
[hidden] { display:none !important; }
.skip-link { position:fixed; top:8px; left:8px; z-index:2000; padding:12px 20px; background:var(--teal-deep); color:white; transform:translateY(-150%); }
.skip-link:focus { transform:none; }
section[id] { scroll-margin-top:125px; }
.reveal { opacity:1; transform:none; }
.nav-toggle { background:none; border:0; min-width:44px; min-height:44px; align-items:center; justify-content:center; }
.nav-links { gap:24px; }
.collection { padding:100px 0; background:var(--pearl); }
.collection-head { display:flex; justify-content:space-between; align-items:end; gap:28px; margin-bottom:38px; }
.collection-head p { max-width:430px; color:#4a4a45; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.collection-card { border:1px solid #d9dfd4; border-radius:16px; overflow:hidden; background:var(--cream); }
.collection-card img { display:block; width:100%; height:220px; object-fit:cover; }
.collection-card .copy { padding:28px; }
.collection-card h3 { font-size:1.65rem; color:var(--teal-deep); margin:10px 0; }
.collection-card p { color:#4a4a45; margin:12px 0 20px; }
.text-link { display:inline-block; font-weight:500; color:var(--teal); border-bottom:1px solid var(--teal); padding-bottom:3px; }
.status-tag { display:inline-block; font:500 .68rem var(--sans); text-transform:uppercase; letter-spacing:.13em; padding:7px 11px; border:1px solid #9bb39a; border-radius:100px; color:var(--teal-deep); }
.gateway-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:25px; }
.gateway-note { margin-top:16px; font-size:.86rem; color:#4a4a45; }
.aira-dialog { border:1px solid #c4d2c3; border-radius:20px; width:min(620px,calc(100% - 32px)); max-height:90dvh; padding:32px; margin:auto; background:var(--pearl); color:var(--charcoal); box-shadow:0 30px 100px #163f3540; overflow:auto; }
.aira-dialog::backdrop { background:#163f35bb; backdrop-filter:blur(5px); }
.aira-dialog h2 { font:400 2rem/1.2 var(--serif); color:var(--teal-deep); margin:15px 0; }
.aira-dialog p { margin:12px 0; }
.dialog-top { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.close-dialog { background:none; border:0; color:var(--teal); text-decoration:underline; cursor:pointer; min-height:44px; font:500 .85rem var(--sans); }
.aira-choices { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin:24px 0; }
.aira-choice { display:block; text-align:left; padding:20px; border:1px solid #c4d2c3; border-radius:10px; background:var(--cream); font:400 1rem var(--sans); color:var(--teal-deep); cursor:pointer; }
.aira-choice small { display:block; color:#4a4a45; margin-top:6px; }
.contact-form { display:grid; gap:15px; }
.contact-form label { font-weight:500; display:grid; gap:6px; }
.contact-form input:not([type=checkbox]), .contact-form select, .contact-form textarea { width:100%; min-width:0; padding:12px; border:1px solid #9bb39a; border-radius:6px; background:white; color:var(--charcoal); font:400 1rem var(--sans); }
.contact-form textarea { min-height:120px; resize:vertical; }
.contact-form .consent { display:flex; align-items:start; font-weight:400; font-size:.9rem; }
.contact-form .consent input { margin-top:6px; }
.contact-form .honey { display:none; }
.form-status { min-height:1.6em; font-size:.95rem; }
.contact-form button:disabled { opacity:.65; cursor:wait; }
.learn-body { margin:0; background:var(--cream); color:var(--charcoal); font:400 1rem/1.7 var(--sans); }
.learn-body * { box-sizing:border-box; }
.learn-body a { color:inherit; text-decoration:none; }
.learn-body .wrap { max-width:1180px; margin:auto; padding:0 28px; }
.learn-nav { background:var(--pearl); border-bottom:1px solid #d9dfd4; padding:20px 0; }
.learn-nav .wrap { display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
.wordmark { font:400 1.5rem/1.1 var(--serif); color:var(--teal) !important; }
.wordmark span { display:block; font:.65rem var(--sans); letter-spacing:.3em; margin-top:6px; }
.learn-nav .links { display:flex; flex-wrap:wrap; gap:20px; font-size:.85rem; }
.learn-nav [aria-current] { border-bottom:1px solid var(--teal); }
.learn-hero { padding:80px 0 65px; display:grid; grid-template-columns:1.3fr 1fr; gap:70px; align-items:center; }
.learn-body .eyebrow { font:500 .72rem var(--sans); letter-spacing:.22em; text-transform:uppercase; color:var(--teal); }
.learn-body h1 { font:400 clamp(2.6rem,5vw,4.8rem)/1.08 var(--serif); color:var(--teal-deep); margin:20px 0; }
.learn-body h1 em { font-weight:300; }
.learn-body h2 { font:400 clamp(1.9rem,3vw,2.8rem)/1.2 var(--serif); color:var(--teal-deep); }
.learn-body h3 { font:400 1.6rem/1.25 var(--serif); color:var(--teal-deep); }
.learn-body .btn { display:inline-flex; padding:13px 24px; border:1px solid var(--teal); border-radius:100px; background:var(--teal); color:var(--pearl); font:500 .85rem var(--sans); cursor:pointer; }
.learn-hero .art { width:100%; border-radius:50% 50% 12px 12px; }
.learn-body .collection { border-top:1px solid #d9dfd4; }
.learn-body details { border-top:1px solid #c4d2c3; padding:16px 0; }
.learn-body summary { cursor:pointer; font-weight:500; color:var(--teal); }
.learn-body details ul { padding-left:22px; }
.learn-body .sample { background:var(--cream); border:1px solid #c4d2c3; padding:22px; border-radius:10px; }
.sample label { display:block; margin:10px 0; }
.sample input { display:block; width:100%; border:0; border-bottom:1px solid #9bb39a; background:transparent; padding:10px 0; font:inherit; }
.learning-principles { padding:65px 0; display:grid; grid-template-columns:1fr 1fr; gap:60px; }
.learn-footer { background:var(--teal-deep); color:var(--cream); padding:35px 0; }
.learn-footer .wrap { display:flex; justify-content:space-between; flex-wrap:wrap; gap:20px; }
.learn-footer a { text-decoration:underline; }
@media(max-width:1100px) { .nav-links { gap:16px; } }
@media(max-width:940px) { .nav-links:not(.open) { visibility:hidden; } .nav-links.open { visibility:visible; } .collection-grid { grid-template-columns:1fr; } .collection-head { display:block; } .collection-head p { margin-top:20px; } .learn-hero { gap:28px; } }
@media(max-width:640px) { .collection { padding:65px 0; } .aira-choices { grid-template-columns:1fr; } .aira-dialog { padding:22px; } .learn-hero,.learning-principles { grid-template-columns:1fr; gap:30px; } .learn-hero { padding:50px 0; } .learn-hero .art { max-height:280px; object-fit:cover; } .learn-nav .links { gap:14px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto !important; } *,*::before,*::after { animation:none !important; transition:none !important; } }
