/* Elevaare — site stylesheet. Colours and fonts from the Elevaare brand system. */
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/cormorant.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}
@font-face{font-family:"Cormorant Garamond";src:url(../fonts/cormorant-italic.woff2) format("woff2");font-weight:300 700;font-style:italic;font-display:swap}
@font-face{font-family:"DM Sans";src:url(../fonts/dmsans.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}

:root{
  color-scheme:light;
  --wine:#4A1628; --wine-deep:#2B0B16; --wine-soft:#6B2440;
  --gold:#C9A84C; --gold-ink:#7C5F1C;
  --cream:#FBF7F0; --paper:#F3EADD; --card:#FFFDF9;
  --ink:#241318; --muted:#65525A; --rule:#E2D5C6;
  --teal:#2A9D8F; --teal-deep:#14493F;
  --on-dark:#F7EFE3; --on-dark-muted:#D9C9C0;
  --display:"Cormorant Garamond",Georgia,"Times New Roman",serif;
  --body:"DM Sans","Helvetica Neue",Arial,sans-serif;
  --gutter:clamp(16px,4vw,40px);
  --maxw:1120px;
  --radius:14px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--body);font-size:1.0625rem;line-height:1.7}
img{max-width:100%;display:block}
a{color:var(--wine)}
a:hover{color:var(--wine-soft)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.12;margin:0;text-wrap:balance;color:var(--wine)}
h1{font-size:clamp(2.5rem,6.2vw,4.4rem);font-weight:500;letter-spacing:-.01em}
h2{font-size:clamp(2rem,4.2vw,3rem)}
h3{font-size:1.6rem}
p{margin:0}
.skip{position:absolute;left:-999px;top:0;background:var(--wine);color:var(--on-dark);padding:.6rem 1rem;z-index:100}
.skip:focus{left:var(--gutter)}
.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
.narrow{max-width:720px}
.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold-ink)}
.dark .eyebrow,.hero .eyebrow{color:var(--gold)}
.lead{font-size:1.1875rem;color:var(--muted);max-width:60ch}
.stack{display:flex;flex-direction:column;gap:1rem}
.stack-lg{display:flex;flex-direction:column;gap:1.5rem}
.prose{display:flex;flex-direction:column;gap:1.05rem;max-width:64ch}
.prose h3{margin-top:.6rem}
.italic{font-family:var(--display);font-style:italic;font-weight:500}

/* Header */
.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:rgba(251,247,240,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--rule)}
.header-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:68px}
.brand{display:flex;flex-direction:column;text-decoration:none;line-height:1}
.brand .word{font-family:var(--display);font-size:1.6rem;font-weight:600;letter-spacing:.14em;color:var(--wine)}
.brand .word span{color:var(--gold)}
.brand .brand-sub{font-size:.625rem;letter-spacing:.24em;text-transform:uppercase;color:var(--muted);margin-top:.25rem}
.nav{display:flex;align-items:center;gap:1.4rem}
.nav a{font-size:.9375rem;font-weight:500;color:var(--ink);text-decoration:none;padding:.3rem 0;border-bottom:1.5px solid transparent}
.nav a:hover{color:var(--wine);border-bottom-color:var(--gold)}
.nav a[aria-current="page"]{color:var(--wine);border-bottom-color:var(--wine)}
.header-tools{display:flex;align-items:center;gap:.9rem}
.langs{display:flex;gap:.15rem;font-size:.75rem;font-weight:700;letter-spacing:.08em}
.langs a{color:var(--muted);text-decoration:none;padding:.3rem .45rem;border-radius:6px}
.langs a[aria-current="true"]{color:var(--wine);background:var(--paper)}
.langs a:hover{color:var(--wine)}
.menu-btn{display:none;background:none;border:1px solid var(--rule);border-radius:10px;width:44px;height:44px;align-items:center;justify-content:center;cursor:pointer;color:var(--wine)}
.menu-btn svg{width:20px;height:20px}
@media (max-width:1020px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;align-items:stretch;gap:0;background:var(--cream);border-bottom:1px solid var(--rule);padding:.5rem var(--gutter) 1.2rem;box-shadow:0 18px 30px -24px rgba(43,11,22,.45)}
  .nav.open{display:flex}
  .nav a{padding:.8rem 0;border-bottom:1px solid var(--rule);font-size:1.0625rem}
  .nav a:hover,.nav a[aria-current="page"]{border-bottom-color:var(--rule)}
  .menu-btn{display:inline-flex}
  .header-tools .btn{display:none}
  .nav .nav-book{display:block}
}
.nav .nav-book{display:none}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--body);font-weight:700;font-size:.9375rem;line-height:1.2;text-decoration:none;border-radius:999px;padding:.8rem 1.5rem;border:1.5px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.btn-wine{background:var(--wine);color:var(--on-dark)}
.btn-wine:hover{background:var(--wine-soft);color:var(--on-dark)}
.btn-gold{background:var(--gold);color:var(--wine-deep)}
.btn-gold:hover{background:#D7B964;color:var(--wine-deep)}
.btn-line{border-color:var(--wine);color:var(--wine);background:transparent}
.btn-line:hover{background:var(--wine);color:var(--on-dark)}
.btn-ghost{border-color:rgba(247,239,227,.6);color:var(--on-dark)}
.btn-ghost:hover{background:rgba(247,239,227,.12);color:var(--on-dark)}
.btn-sm{padding:.55rem 1.1rem;font-size:.875rem}
.btn-row{display:flex;flex-wrap:wrap;gap:.8rem}
.link-arrow{font-weight:700;text-decoration:none;font-size:.9375rem;display:inline-flex;gap:.4rem;align-items:center}
.link-arrow::after{content:"\2192";transition:transform .2s}
.link-arrow:hover::after{transform:translateX(3px)}

/* Hero */
.hero{position:relative;color:var(--on-dark);background-color:var(--wine);
  background-image:linear-gradient(180deg,rgba(43,11,22,.25),rgba(43,11,22,.55)),url(../img/hero.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 400' preserveAspectRatio='xMidYMax slice'%3E %3Cpath d='M0 250 C150 190 300 230 450 200 C620 165 760 235 900 205 C1030 178 1120 200 1200 190 L1200 400 L0 400Z' fill='%23C9A84C' fill-opacity='.22'/%3E %3Cpath d='M0 300 C180 250 340 300 520 270 C700 240 860 300 1020 275 C1110 262 1160 268 1200 262 L1200 400 L0 400Z' fill='%23F7EFE3' fill-opacity='.10'/%3E %3Cpath d='M0 345 C220 312 420 352 640 330 C860 308 1020 350 1200 322 L1200 400 L0 400Z' fill='%231B0710' fill-opacity='.35'/%3E %3C/svg%3E"),radial-gradient(900px 480px at 85% -10%,rgba(201,168,76,.32),transparent 60%),radial-gradient(700px 500px at 0% 110%,rgba(42,157,143,.22),transparent 60%),linear-gradient(160deg,var(--wine-deep),var(--wine) 55%,#652440);
  background-size:cover,cover,100% auto,auto,auto,auto;background-position:center,center,bottom,center,center,center;background-repeat:no-repeat}
.hero .wrap{padding-block:clamp(4.5rem,11vw,8.5rem) clamp(5rem,12vw,9.5rem)}
.hero h1{color:var(--on-dark);max-width:15ch;margin-top:1rem}
.hero .lead{color:var(--on-dark-muted);margin-top:1.3rem}
.hero .btn-row{margin-top:2rem}
.hero-sub .wrap{padding-block:clamp(3.5rem,8vw,6rem) clamp(4rem,9vw,6.5rem)}
.hero-sub h1{font-size:clamp(2.3rem,5.4vw,3.8rem);max-width:18ch}
.hero-facts{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.8rem}
.fact-chip{border:1px solid rgba(247,239,227,.35);border-radius:999px;padding:.4rem .95rem;font-size:.8125rem;color:var(--on-dark)}
.fact-chip b{color:var(--gold);font-weight:700;margin-right:.35rem}
@keyframes rise{from{opacity:.001;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero .eyebrow,.hero h1,.hero .lead,.hero .btn-row,.hero .hero-facts{animation:rise .9s cubic-bezier(.2,.7,.2,1) both}
.hero h1{animation-delay:.08s}.hero .lead{animation-delay:.16s}.hero .btn-row,.hero .hero-facts{animation-delay:.24s}

/* Sections */
.section{padding-block:clamp(3.8rem,8vw,6.5rem)}
.section.tight{padding-block:clamp(2.8rem,6vw,4.5rem)}
.section.paper{background:var(--paper)}
.section.dark{background:linear-gradient(155deg,var(--wine-deep),var(--wine));color:var(--on-dark)}
.section.dark h2,.section.dark h3{color:var(--on-dark)}
.section.dark .lead,.section.dark p{color:var(--on-dark-muted)}
.section-head{display:flex;flex-direction:column;gap:.8rem;margin-bottom:2.4rem;max-width:720px}
.split{display:grid;gap:clamp(2rem,5vw,4.5rem);align-items:center}
.split>*,.grid>*,.pillar>*{min-width:0}
@media (min-width:860px){.split{grid-template-columns:1.05fr 1fr}.split.flip>:first-child{order:2}}

/* Scenes (artwork + optional photo) */
.scene{border-radius:20px;width:100%;aspect-ratio:5/4;max-width:100%;background-color:var(--wine);background-size:cover,cover,cover;background-position:center;background-repeat:no-repeat}
.scene-table{background-image:url(../img/table.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='xMidYMid slice'%3E %3Cg fill='none' stroke='%23C9A84C'%3E %3Ccircle cx='190' cy='170' r='78' stroke-opacity='.55' stroke-width='2'/%3E %3Ccircle cx='190' cy='170' r='58' stroke-opacity='.25' stroke-width='1.5'/%3E %3Ccircle cx='370' cy='230' r='70' stroke-opacity='.45' stroke-width='2'/%3E %3Ccircle cx='370' cy='230' r='50' stroke-opacity='.2' stroke-width='1.5'/%3E %3Ccircle cx='470' cy='110' r='40' stroke-opacity='.35' stroke-width='1.5'/%3E %3C/g%3E %3Ccircle cx='370' cy='230' r='50' fill='%237A1F3D' fill-opacity='.55'/%3E %3Ccircle cx='190' cy='170' r='58' fill='%23F7EFE3' fill-opacity='.05'/%3E %3C/svg%3E"),radial-gradient(420px 260px at 72% 22%,rgba(201,168,76,.45),transparent 70%),linear-gradient(150deg,#652440,var(--wine-deep))}
.scene-vines{background-image:url(../img/vineyard.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='xMidYMax slice'%3E %3Crect y='0' width='600' height='170' fill='%23F7EFE3' fill-opacity='.06'/%3E %3Cg stroke='%23C9A84C' stroke-opacity='.45' stroke-width='3' stroke-linecap='round' stroke-dasharray='2 14'%3E %3Cline x1='300' y1='170' x2='-200' y2='400'/%3E%3Cline x1='300' y1='170' x2='-40' y2='400'/%3E %3Cline x1='300' y1='170' x2='120' y2='400'/%3E%3Cline x1='300' y1='170' x2='280' y2='400'/%3E %3Cline x1='300' y1='170' x2='440' y2='400'/%3E%3Cline x1='300' y1='170' x2='600' y2='400'/%3E %3Cline x1='300' y1='170' x2='800' y2='400'/%3E %3C/g%3E %3Cpath d='M0 175 C120 150 220 165 300 160 C400 152 500 140 600 160 L600 175 L0 175Z' fill='%231B0710' fill-opacity='.3'/%3E %3C/svg%3E"),radial-gradient(500px 220px at 50% 30%,rgba(201,168,76,.35),transparent 70%),linear-gradient(180deg,#7A3A4E 0%,#4A1628 45%,#2B0B16 100%)}
.scene-land{background-color:var(--teal-deep);background-image:url(../img/landscape.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 400' preserveAspectRatio='xMidYMax slice'%3E %3Cpath d='M0 250 C150 190 300 230 450 200 C620 165 760 235 900 205 C1030 178 1120 200 1200 190 L1200 400 L0 400Z' fill='%23C9A84C' fill-opacity='.22'/%3E %3Cpath d='M0 300 C180 250 340 300 520 270 C700 240 860 300 1020 275 C1110 262 1160 268 1200 262 L1200 400 L0 400Z' fill='%23F7EFE3' fill-opacity='.10'/%3E %3Cpath d='M0 345 C220 312 420 352 640 330 C860 308 1020 350 1200 322 L1200 400 L0 400Z' fill='%231B0710' fill-opacity='.35'/%3E %3C/svg%3E"),radial-gradient(520px 260px at 30% 15%,rgba(247,239,227,.25),transparent 60%),linear-gradient(180deg,#2A9D8F 0%,#1F6F65 55%,#14493F 100%)}
.scene-pueblo{background-color:#9A4A2C;background-image:url(../img/pueblo.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='xMidYMax slice'%3E %3Cg fill='%233A1410' fill-opacity='.35'%3E %3Cpath d='M40 400 V250 a55 55 0 0 1 110 0 V400Z'/%3E %3Cpath d='M190 400 V250 a55 55 0 0 1 110 0 V400Z'/%3E %3Cpath d='M340 400 V250 a55 55 0 0 1 110 0 V400Z'/%3E %3Cpath d='M490 400 V250 a55 55 0 0 1 110 0 V400Z'/%3E %3C/g%3E %3Ccircle cx='470' cy='95' r='38' fill='%23F2C66D' fill-opacity='.55'/%3E %3Crect y='372' width='600' height='28' fill='%233A1410' fill-opacity='.25'/%3E %3C/svg%3E"),linear-gradient(180deg,#D98E4E 0%,#B5603A 55%,#7A3322 100%)}
.scene-forest{background-color:var(--teal-deep);background-image:url(../img/forest.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='xMidYMax slice'%3E %3Cg fill='%230B2A26' fill-opacity='.55'%3E %3Cpath d='M60 400 L110 230 L160 400Z'/%3E%3Cpath d='M130 400 L195 180 L260 400Z'/%3E %3Cpath d='M240 400 L290 250 L340 400Z'/%3E%3Cpath d='M320 400 L390 170 L460 400Z'/%3E %3Cpath d='M440 400 L495 220 L550 400Z'/%3E%3Cpath d='M520 400 L570 260 L620 400Z'/%3E %3C/g%3E %3Crect y='360' width='600' height='40' fill='%230B2A26' fill-opacity='.4'/%3E %3Ccircle cx='120' cy='90' r='30' fill='%23F7EFE3' fill-opacity='.25'/%3E %3C/svg%3E"),linear-gradient(180deg,#5E8F84 0%,#2F6A5F 50%,#14493F 100%)}
.scene-podcast{background-image:url(../img/podcast.jpg),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 400' preserveAspectRatio='xMidYMid slice'%3E %3Cg fill='none' stroke='%23C9A84C' stroke-linecap='round'%3E %3Cpath d='M250 140 a70 70 0 0 1 0 120' stroke-opacity='.7' stroke-width='3'/%3E %3Cpath d='M285 105 a115 115 0 0 1 0 190' stroke-opacity='.45' stroke-width='3'/%3E %3Cpath d='M320 70 a160 160 0 0 1 0 260' stroke-opacity='.25' stroke-width='3'/%3E %3C/g%3E %3Ccircle cx='230' cy='200' r='16' fill='%23C9A84C' fill-opacity='.8'/%3E %3C/svg%3E"),radial-gradient(400px 260px at 30% 50%,rgba(201,168,76,.28),transparent 70%),linear-gradient(150deg,#652440,var(--wine-deep))}
.scene.short{aspect-ratio:16/9}

/* Cards and grids */
.grid{display:grid;gap:1.25rem}
@media (min-width:700px){.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}}
@media (min-width:700px) and (max-width:959px){.grid-4{grid-template-columns:repeat(2,1fr)}}
@media (min-width:960px){.grid-4{grid-template-columns:repeat(4,1fr)}}
.card{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:1.6rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}
.card h3{font-size:1.5rem}
.card p{color:var(--muted);font-size:1rem}
.card .link-arrow{margin-top:auto;padding-top:.4rem}
.tags{display:flex;flex-wrap:wrap;gap:.4rem}
.tag{font-size:.75rem;font-weight:600;color:var(--wine);background:rgba(201,168,76,.18);border-radius:999px;padding:.22rem .7rem}
.section.dark .card{background:rgba(247,239,227,.06);border-color:rgba(247,239,227,.16)}
.section.dark .card p{color:var(--on-dark-muted)}

/* Pillar blocks on Experiences */
.pillar{display:grid;gap:1.6rem;padding-block:2.6rem;border-top:1px solid var(--rule)}
.pillar:first-of-type{border-top:0;padding-top:0}
@media (min-width:860px){.pillar{grid-template-columns:.9fr 1.1fr;gap:3.5rem}}
.pillar h2{font-size:clamp(1.9rem,3.6vw,2.6rem)}
.checks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.9rem}
.checks li{padding-left:1.6rem;position:relative}
.checks li::before{content:"";position:absolute;left:0;top:.62em;width:.7rem;height:1.5px;background:var(--gold)}
.checks b{color:var(--wine);display:block;font-weight:700}
.section.dark .checks b{color:var(--on-dark)}
.meta-row{display:flex;flex-wrap:wrap;gap:.5rem 1.4rem;font-size:.875rem;color:var(--muted);margin-top:.4rem}
.meta-row span b{color:var(--ink);font-weight:700}

/* Wine label (terroir card) */
.label-card{background:var(--card);border:1px solid var(--gold);border-radius:6px;padding:2rem 1.8rem;position:relative;box-shadow:0 1px 0 var(--rule),0 24px 40px -32px rgba(43,11,22,.5)}
.label-card::before{content:"";position:absolute;inset:6px;border:1px solid rgba(201,168,76,.45);border-radius:3px;pointer-events:none}
.label-card .label-top{text-align:center;display:flex;flex-direction:column;gap:.3rem;padding-bottom:1.1rem;border-bottom:1px solid var(--rule)}
.label-card .label-top .italic{font-size:1.9rem;color:var(--wine);line-height:1.1}
.label-card dl{margin:1.1rem 0 0;display:grid;grid-template-columns:auto 1fr;gap:.55rem 1.2rem;font-size:.9375rem}
.label-card dt{font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink);padding-top:.25rem}
.label-card dd{margin:0;color:var(--ink)}

/* Numbers */
.figures{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);border-block:1px solid rgba(247,239,227,.2);padding-block:1.6rem}
.figures div{display:flex;flex-direction:column;gap:.3rem}
.figures strong{font-family:var(--display);font-size:clamp(2.6rem,6vw,3.8rem);font-weight:500;color:var(--gold);line-height:1;font-variant-numeric:lining-nums tabular-nums}
.figures span{font-size:.875rem;color:var(--on-dark-muted);line-height:1.4}

/* Schedule */
.days{display:grid;gap:1.25rem}
@media (min-width:900px){.days{grid-template-columns:repeat(3,1fr)}}
.day{background:var(--card);border:1px solid var(--rule);border-radius:var(--radius);padding:1.5rem}
.day h3{font-size:1.35rem}
.day .eyebrow{display:block;margin-bottom:.35rem}
.day ol{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column}
.day li{display:grid;grid-template-columns:4.6rem 1fr;gap:.8rem;padding-block:.6rem;border-top:1px solid var(--rule);font-size:.9375rem;line-height:1.5}
.day time{font-weight:700;color:var(--wine);font-variant-numeric:tabular-nums;font-size:.8125rem;padding-top:.1rem}

/* Pricing */
.price{font-family:var(--display);font-size:3.2rem;font-weight:500;color:var(--wine);line-height:1;font-variant-numeric:lining-nums tabular-nums}
.price small{font-family:var(--body);font-size:.875rem;color:var(--muted);font-weight:500;margin-left:.3rem}

/* Steps */
.steps{display:grid;gap:1.25rem;counter-reset:step}
@media (min-width:860px){.steps{grid-template-columns:repeat(3,1fr)}}
.step{counter-increment:step;display:flex;flex-direction:column;gap:.6rem;padding-top:1.1rem;border-top:2px solid var(--gold)}
.step::before{content:counter(step);font-family:var(--display);font-size:2.4rem;line-height:1;color:var(--gold);font-variant-numeric:lining-nums}
.step h3{font-size:1.45rem}
.section.dark .step p{color:var(--on-dark-muted)}

/* Places list */
.places{display:grid;gap:1.25rem}
@media (min-width:860px){.places{grid-template-columns:repeat(2,1fr)}}
.place{display:flex;flex-direction:column;gap:.9rem}
.place ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.place li{padding-block:.75rem;border-top:1px solid var(--rule);display:flex;flex-direction:column;gap:.15rem}
.place li b{font-family:var(--display);font-size:1.3rem;font-weight:600;color:var(--wine)}
.place li span{color:var(--muted);font-size:.9375rem}

/* Quote */
.pull{font-family:var(--display);font-style:italic;font-size:clamp(1.6rem,3.4vw,2.3rem);line-height:1.3;color:var(--wine);max-width:28ch;text-wrap:balance}
.section.dark .pull{color:var(--on-dark)}
.pull-by{font-size:.875rem;color:var(--muted);margin-top:.8rem}

/* Forms */
.form{display:grid;gap:1.1rem}
@media (min-width:700px){.form .two{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}}
.form .two{display:grid;gap:1.1rem}
.field{display:flex;flex-direction:column;gap:.4rem}
.field label,.field legend{font-size:.8125rem;font-weight:700;color:var(--ink)}
.field .hint{font-size:.8125rem;color:var(--muted);font-weight:400}
.field input,.field select,.field textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--card);border:1px solid #CDBDAB;border-radius:10px;padding:.75rem .9rem;width:100%}
.field textarea{min-height:140px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--gold);outline-offset:1px;border-color:var(--gold)}
.check{display:flex;gap:.7rem;align-items:flex-start;font-size:.875rem;color:var(--muted);line-height:1.5}
.check input{margin-top:.2rem;width:1.1rem;height:1.1rem;accent-color:var(--wine);flex-shrink:0}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.form-status{font-size:.9375rem;font-weight:600;min-height:1.4em}
.form-status.ok{color:#2F6A43}
.form-status.err{color:#A1262E}
.form-card{background:var(--card);border:1px solid var(--rule);border-radius:18px;padding:clamp(1.4rem,3vw,2.2rem)}
.inline-form{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.4rem}
.inline-form .field{flex:1 1 260px}
.inline-form .field input{border-radius:999px;padding-inline:1.2rem}
.inline-form .btn{align-self:flex-end}
.inline-form .check{flex-basis:100%}

/* Contact aside */
.aside-list{display:flex;flex-direction:column;gap:1.2rem}
.aside-list div{display:flex;flex-direction:column;gap:.2rem;padding-bottom:1.2rem;border-bottom:1px solid var(--rule)}
.aside-list .k{font-size:.6875rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-ink)}
.aside-list .v{font-size:1.0625rem}
.copyable{font-family:var(--body);font-weight:600;color:var(--wine);user-select:all}

/* Legal */
.legal h2{font-size:1.8rem;margin-top:1.6rem}
.legal ul{margin:0;padding-left:1.2rem;display:flex;flex-direction:column;gap:.4rem}

/* Journal */
.article-meta{font-size:.875rem;color:var(--muted)}
.article h2{font-size:1.9rem;margin-top:1rem}
.dropcap::first-letter{font-family:var(--display);float:left;font-size:4.2rem;line-height:.85;padding:.35rem .5rem 0 0;color:var(--wine)}

/* Footer */
.site-footer{background:var(--wine-deep);color:var(--on-dark-muted);padding-block:3.5rem 2rem;font-size:.9375rem}
.site-footer a{color:var(--on-dark);text-decoration:none}
.site-footer a:hover{color:var(--gold)}
.site-footer .copyable{color:var(--on-dark)}
.foot-grid{display:grid;gap:2.2rem}
@media (min-width:860px){.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.foot-grid h4{font-size:.6875rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin:0 0 .9rem}
.foot-grid ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.site-footer .brand .word{color:var(--on-dark)}
.site-footer .brand .brand-sub{color:var(--on-dark-muted)}
.foot-note{margin-top:.9rem;max-width:34ch}
.foot-bottom{margin-top:2.8rem;padding-top:1.4rem;border-top:1px solid rgba(247,239,227,.14);display:flex;flex-wrap:wrap;gap:.8rem 1.6rem;justify-content:space-between;font-size:.8125rem}
.foot-bottom .langs a{color:var(--on-dark-muted)}
.foot-bottom .langs a[aria-current="true"]{background:rgba(247,239,227,.1);color:var(--on-dark)}

/* Preview banner (only in the preview build) */
.preview-note{background:var(--gold);color:var(--wine-deep);font-size:.8125rem;font-weight:600;text-align:center;padding:.45rem var(--gutter)}
