/* Art Muse Visuals — stylesheet (re-themed around the Art Nouveau poppy emblem) */
:root{
  /* Sampled from the emblem */
  --poppy:#D32F1C; --poppy-deep:#A8241A; --black:#0F0F0E; --sage:#939680; --skin:#EFD8BC;
  /* Theme */
  --ivory:#FBF7EF; --cream:#F8EFDE; --paper:#F4ECDD; --pale-sage:#E8EADF; --blush:#F6E6DA;
  --ink:#1C1A18; --ink-soft:#57514A; --sage-deep:#5E6350;
  /* Extended palette (all drawn from the emblem) */
  --oxblood:#6E1F1C;      /* deep wine: hover states, numbers, deep accents (10.5:1 on ivory) */
  --petal:#F6E1DB;        /* soft poppy-pink tint: section wash, hover fills, selection */
  --petal-mid:#E8BFB3;    /* poppy-pink line colour: card/pill hover borders (decorative) */
  --olive:#4E5541;        /* dark sage/olive: small caps labels, eyebrows (7.3:1 on ivory) */
  --sage-light:#C5C9B2;   /* light sage: hairlines, pill borders (decorative) */
  --seed:#DDE0D0;         /* seed-pod green-grey: tag fills, washes */
  --peach:#F7E7D6;        /* warm skin/peach wash */
  --ochre:#B08A4A;        /* muted gold: decorative rules and dots only (3:1) */
  --ochre-deep:#856427;   /* ochre text on ivory/white only (5.1:1) */
  --gold-light:#C9A866;   /* gold on the black footer (8.5:1) */
  --line:rgba(28,26,24,.14); --line-soft:rgba(28,26,24,.08);
  --shadow:0 22px 44px -28px rgba(28,26,24,.45);
  --serif:"Cormorant Garamond","Cormorant",Georgia,"Times New Roman",serif;
  --sans:"Jost","Helvetica Neue",Arial,sans-serif;
  --wrap:1180px; --radius:6px; --arch:var(--radius); /* arches retired Nov 2026 */
  --rule:url("../images/brand/poppy-rule.svg");
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
body{margin:0;font-family:var(--sans);font-weight:300;font-size:1.0625rem;line-height:1.75;color:var(--ink);
  background:var(--ivory) radial-gradient(1100px 620px at 88% -8%,rgba(147,150,128,.16),transparent 62%) no-repeat;}
img{max-width:100%;height:auto;display:block}
a{color:var(--poppy-deep);text-underline-offset:3px;text-decoration-thickness:1px}
a:hover{color:var(--oxblood)}
:focus-visible{outline:2px solid var(--poppy);outline-offset:3px;border-radius:2px}
::selection{background:var(--petal);color:var(--oxblood)}
h1,h2,h3,h4{font-family:var(--serif);font-weight:500;line-height:1.12;margin:0 0 .5em;letter-spacing:.003em;color:var(--black)}
h1{font-size:clamp(2.7rem,5.6vw,4.6rem);font-weight:400}
h2{font-size:clamp(2.05rem,3.6vw,3rem);font-weight:400}
h3{font-size:1.55rem}
h1 em,h2 em{font-style:italic;color:var(--poppy-deep)}
p{margin:0 0 1.1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(1.25rem,4vw,2.5rem)}
.eyebrow{font-family:var(--sans);font-size:.74rem;letter-spacing:.3em;text-transform:uppercase;color:var(--olive);font-weight:400;margin-bottom:1.1rem;display:flex;align-items:center;gap:.8rem}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--poppy);flex:none}
.center .eyebrow,.section-head.center .eyebrow{justify-content:center}
.center .eyebrow::after,.section-head.center .eyebrow::after{content:"";width:28px;height:1px;background:var(--poppy);flex:none}
.lede{font-family:var(--serif);font-size:clamp(1.3rem,2vw,1.6rem);line-height:1.5;color:var(--ink-soft);font-style:italic;max-width:38ch}
.muted{color:var(--ink-soft)}
.center{text-align:center}.center .lede{margin-left:auto;margin-right:auto}
.skip{position:absolute;left:-999px;top:0;background:var(--black);color:#fff;padding:.6rem 1rem;z-index:100}
.skip:focus{left:1rem;top:1rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* Ornaments */
.ornament{width:200px;height:24px;background:var(--rule) left center/contain no-repeat;margin:1.3rem 0 1.6rem}
.center .ornament,.section-head.center .ornament{margin-left:auto;margin-right:auto;background-position:center}
.divider{width:200px;height:24px;background:var(--rule) left center/contain no-repeat;margin:1.3rem 0}
.center .divider{margin-left:auto;margin-right:auto}

/* Draft markers — kept clearly visible, restyled to the palette */
.draft-tag{display:inline-block;font-family:var(--sans);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  background:rgba(221,224,208,.55);color:var(--olive);border:1px dashed var(--sage);border-radius:999px;padding:.12rem .62rem;vertical-align:middle;font-weight:400;line-height:1.6}
.draft-note{background:rgba(232,234,223,.7);border:1px dashed var(--sage);border-radius:4px;padding:.8rem 1rem;font-size:.9rem;color:#4A4E3F}

/* Header */
.site-header{position:sticky;top:0;z-index:50;background:rgba(251,247,239,.9);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line-soft)}
.site-header::after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:linear-gradient(90deg,transparent,rgba(28,26,24,.12) 20%,rgba(28,26,24,.12) 80%,transparent)}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:86px}
.brand{color:var(--black);text-decoration:none;display:flex;align-items:center;gap:.85rem;white-space:nowrap}
.brand:hover{color:var(--black)}
.brand-mark{height:60px;width:auto;flex:none}
.brand-word{display:flex;flex-direction:column;line-height:1}
.bw-name{font-family:var(--serif);font-size:1.78rem;font-weight:500;letter-spacing:.01em}
.bw-sub{font-family:var(--sans);font-size:.62rem;font-weight:400;letter-spacing:.52em;text-transform:uppercase;color:var(--ink);margin-top:.38rem;padding-left:.12em}
.nav ul{list-style:none;margin:0;padding:0;display:flex;gap:clamp(.9rem,2vw,1.9rem)}
.nav a{text-decoration:none;color:var(--ink);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;padding:.35rem 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}
.nav a:hover{color:var(--oxblood);border-color:var(--petal-mid)}
.nav a[aria-current="page"]{border-color:var(--poppy);color:var(--black)}
.nav-toggle{display:none;background:none;border:1px solid var(--line);border-radius:999px;padding:.5rem 1rem;font:inherit;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);cursor:pointer}
@media (max-width:980px){
  .nav-toggle{display:block}
  .nav{position:absolute;top:86px;left:0;right:0;background:var(--ivory);border-bottom:1px solid var(--line);display:none;box-shadow:0 20px 30px -24px rgba(28,26,24,.35)}
  .nav.open{display:block}
  .nav ul{flex-direction:column;gap:0;padding:.5rem clamp(1.25rem,4vw,2.5rem) 1.2rem}
  .nav a{display:block;padding:.85rem 0;border-bottom:1px solid var(--line-soft)}
  .nav a[aria-current="page"]{border-bottom-color:var(--poppy)}
}
@media (max-width:520px){
  .site-header .wrap{height:74px}
  .nav{top:74px}
  .brand-mark{height:50px}
  .bw-name{font-size:1.5rem}
  .bw-sub{font-size:.54rem;letter-spacing:.46em}
}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--sans);font-size:.78rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase;
  text-decoration:none;padding:1rem 1.75rem;border-radius:999px;border:1px solid var(--black);color:var(--black);background:transparent;cursor:pointer;transition:all .25s ease}
.btn:hover{background:var(--black);color:var(--ivory)}
.btn.solid{background:var(--poppy-deep);border-color:var(--poppy-deep);color:var(--ivory)}
.btn.solid:hover{background:var(--oxblood);border-color:var(--oxblood);color:var(--ivory)}
.btn.soft{border-color:rgba(28,26,24,.35);color:var(--ink);background:rgba(251,247,239,.6)}
.btn.soft:hover{background:var(--black);border-color:var(--black);color:var(--ivory)}
.btn[disabled],.btn.is-disabled{opacity:1;cursor:not-allowed;background:transparent;color:var(--ink-soft);border-color:var(--line);border-style:dashed;padding:.55rem .95rem;font-size:.64rem;letter-spacing:.14em}
.btn[disabled]:hover,.btn.is-disabled:hover{background:transparent;color:var(--ink-soft)}
.btn-row{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}

/* Sections */
section{padding:clamp(4.5rem,9vw,8rem) 0}
.section-head{max-width:660px;margin-bottom:3.2rem}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.section-head h2{margin-bottom:.35em}
.tint-blush{background:linear-gradient(180deg,var(--ivory) 0,var(--blush) 22%,var(--blush) 55%,var(--ivory) 100%)}
.tint-sage{background:linear-gradient(180deg,var(--ivory) 0,var(--pale-sage) 22%,var(--pale-sage) 60%,var(--ivory) 100%)}
.tint-lav,.tint-seed{background:linear-gradient(180deg,var(--ivory) 0,#E9EBE0 22%,#E9EBE0 60%,var(--ivory) 100%)}
.tint-petal{background:linear-gradient(180deg,var(--ivory) 0,var(--petal) 24%,var(--petal) 58%,var(--ivory) 100%)}
.tint-peach{background:linear-gradient(180deg,var(--ivory) 0,var(--peach) 22%,var(--peach) 60%,var(--ivory) 100%)}
section[class*="tint-"]{position:relative}
section[class*="tint-"]::before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%,-50%);width:200px;height:24px;background:var(--rule) center/contain no-repeat}

/* Page hero (inner pages) */
.page-hero{padding:clamp(4.5rem,8vw,7rem) 0 clamp(2.2rem,4vw,3.2rem)}
.page-hero h1{max-width:17ch}

/* Home hero */
.hero{padding:clamp(3rem,6vw,5.5rem) 0 clamp(4.5rem,8vw,7.5rem)}
.hero .wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,6vw,5.5rem);align-items:center}
.hero h1 em{font-style:italic;color:var(--poppy-deep)}
.hero-art{position:relative;margin:0;padding:14px}
.hero-art::before{content:"";position:absolute;inset:0;border:1px solid rgba(224,184,104,.45);border-radius:var(--radius);pointer-events:none}
.hero-art::after{content:"";position:absolute;left:50%;top:-18px;width:36px;height:36px;transform:translateX(-50%);background:url("../images/brand/frame-poppy.png") center/contain no-repeat;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
.hero-art img{border-radius:var(--radius);box-shadow:var(--shadow);width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:rgba(8,9,16,.35)}
.hero-art figcaption{position:absolute;left:-1.8rem;bottom:2.6rem;background:rgba(251,247,239,.96);padding:1rem 1.3rem 1rem 1.2rem;border-radius:2px;border-left:2px solid var(--poppy);
  font-family:var(--serif);font-style:italic;font-size:1.2rem;line-height:1.35;box-shadow:var(--shadow);max-width:80%}
.hero-art figcaption a{font-family:var(--sans);font-style:normal;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;display:block;margin-top:.35rem;text-decoration:none}
@media (max-width:820px){
  .hero .wrap{grid-template-columns:1fr}
  .hero-art{order:-1;max-width:420px;margin:0 auto;width:100%}
  .hero-art figcaption{left:1.6rem;bottom:1.6rem}
}

/* Route cards */
.routes{display:grid;grid-template-columns:repeat(3,1fr);gap:2.6rem 2rem}
.route{position:relative;display:block;text-decoration:none;color:var(--ink);text-align:center;transition:transform .35s ease}
.route:hover{transform:translateY(-4px);color:var(--ink)}
.route img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto;border-radius:var(--radius);box-shadow:0 0 0 1px rgba(224,184,104,.28);transition:box-shadow .35s;background:rgba(8,9,16,.25)}
.route:hover img{box-shadow:var(--shadow)}
.route div{padding:1.2rem .6rem 0}
.route h3{margin-bottom:.2rem;font-size:1.7rem}
.route h3::after{content:"";display:block;width:24px;height:1px;background:var(--poppy);margin:.55rem auto .6rem;transition:width .35s}
.route:hover h3::after{width:56px}
.route p{margin:0 auto;color:var(--ink-soft);font-size:1rem;max-width:30ch}
@media (max-width:900px){.routes{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.routes{grid-template-columns:repeat(2,1fr);gap:2rem 1rem}.route img{aspect-ratio:auto}.route div{padding:.8rem .2rem 0}.route h3{font-size:1.35rem}.route h3::after{margin:.4rem auto .45rem}.route p{font-size:.86rem;line-height:1.5}}

/* Quote band */
.quote-band{text-align:center;padding:clamp(4.5rem,8vw,6.5rem) 0}
.quote-emblem{width:100%;max-width:360px;height:auto;margin:0 auto;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(28,26,24,.18))}
.quote-band blockquote{margin:0 auto;max-width:26ch;font-family:var(--serif);font-style:italic;font-size:clamp(1.9rem,3.6vw,2.9rem);line-height:1.28;color:var(--black)}
.quote-band cite{display:block;margin-top:1.1rem;font-style:normal;font-size:.74rem;letter-spacing:.3em;text-transform:uppercase;color:var(--olive)}
.quote-band.tint-sage::before{display:none}

/* Strip of images */
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.strip{align-items:start;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.strip img{aspect-ratio:auto;object-fit:contain;border-radius:var(--radius);width:100%;height:auto;display:block;margin:0;background:rgba(8,9,16,.25);box-shadow:0 0 0 1px rgba(224,184,104,.22)}

/* Split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.split > img,.framed-art{border-radius:var(--radius);box-shadow:0 0 0 1px rgba(224,184,104,.35),var(--shadow);object-fit:contain}
@media (max-width:820px){.split{grid-template-columns:1fr}}

/* Gallery */
.filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:3rem}
.filters button{font:inherit;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;background:transparent;border:1px solid var(--line);
  color:var(--ink);padding:.5rem .85rem;border-radius:999px;cursor:pointer;transition:all .2s}
.filters button:hover{border-color:var(--petal-mid);background:var(--petal);color:var(--oxblood)}
.filters button[aria-pressed="true"]{background:var(--black);color:var(--ivory);border-color:var(--black)}
.filters .count{opacity:.55;margin-left:.35rem}
.masonry{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 2rem}
@media (max-width:900px){.masonry{grid-template-columns:repeat(2,1fr);gap:2rem 1rem}}
.tile{margin:0;position:relative}
.tile button{all:unset;display:block;cursor:zoom-in;border-radius:var(--radius);overflow:hidden;position:relative;width:100%;box-shadow:0 0 0 1px rgba(224,184,104,.28);background:rgba(8,9,16,.35)}
.tile button:focus-visible{outline:2px solid var(--poppy);outline-offset:4px}
.tile img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transition:transform .7s ease;display:block}
.tile button:hover img{transform:scale(1.02)}
.tile button::after{content:"";position:absolute;right:8px;bottom:8px;width:28px;height:28px;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;opacity:.9;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.tile figcaption{padding:.9rem .2rem 0;font-family:var(--serif);font-size:1.18rem;line-height:1.35;text-align:center}
.tile figcaption small{display:block;font-family:var(--sans);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--olive);margin-top:.35rem}
.tile[hidden]{display:none}
.working{font-style:italic;color:var(--ink-soft)}

/* Lightbox */
.lightbox{position:fixed;inset:0;z-index:200;background:rgba(15,15,14,.94);display:none;align-items:center;justify-content:center;padding:2rem}
.lightbox.open{display:flex}
.lightbox figure{margin:0;max-width:min(1100px,100%);max-height:100%;display:grid;grid-template-columns:auto minmax(220px,300px);gap:1.8rem;align-items:center}
.lightbox img{max-height:86vh;width:auto;border-radius:4px}
.lightbox figcaption{color:#F4EDE1}
.lightbox figcaption .lb-title{font-family:var(--serif);font-size:1.6rem;line-height:1.3;margin-bottom:.4rem}
.lightbox figcaption .lb-col{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;color:var(--sage-light);margin-bottom:1.2rem}
.lightbox figcaption a{color:#fff;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase}
.lb-btn{position:absolute;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.3);width:48px;height:48px;border-radius:50%;font-size:1.4rem;cursor:pointer;display:grid;place-items:center}
.lb-btn:hover{background:rgba(211,47,28,.6);border-color:transparent}
.lb-close{top:1.2rem;right:1.2rem}.lb-prev{left:1.2rem;top:50%;transform:translateY(-50%)}.lb-next{right:1.2rem;top:50%;transform:translateY(-50%)}
@media (max-width:800px){
  .lightbox{padding:1rem;align-items:flex-start;overflow:auto}
  .lightbox figure{grid-template-columns:1fr;gap:1rem;padding-top:3.5rem}
  .lightbox img{max-height:70vh;margin:0 auto}
  .lb-prev,.lb-next{top:auto;bottom:1rem;transform:none}
}

/* Cards (films, learn, shop) */
.grid{display:grid;gap:2rem 1.6rem}
.grid.c3{grid-template-columns:repeat(3,1fr)}
.grid.c4{grid-template-columns:repeat(4,1fr)}
.grid.c2{grid-template-columns:repeat(2,1fr)}
@media (max-width:1000px){.grid.c4{grid-template-columns:repeat(3,1fr)}}
@media (max-width:900px){.grid.c3,.grid.c4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.grid.c2,.grid.c3,.grid.c4{grid-template-columns:1fr}}
.card{background:#FFFDF8;border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .3s,transform .3s,border-color .3s}
.card:hover{box-shadow:var(--shadow);transform:translateY(-2px);border-color:var(--petal-mid)}
.card .media{position:relative;display:block;overflow:hidden;margin:12px 12px 0;border-radius:var(--radius);background:rgba(8,9,16,.35)}
.card .media img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transition:transform .7s ease}
.card .media::after{content:"";position:absolute;right:8px;bottom:8px;width:26px;height:26px;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;pointer-events:none;opacity:.92;filter:drop-shadow(0 2px 6px rgba(0,0,0,.5))}
.card:hover .media img{transform:scale(1.03)}
.card .body{padding:1.1rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.4rem;flex:1}
.card h3{font-size:1.38rem;margin:0}
.card p{margin:0;font-size:.95rem;color:var(--ink-soft)}
.card .meta{font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--olive)}
.card .foot{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line-soft);margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:.6rem;flex-wrap:wrap}
.card .body > .foot{margin-top:auto}
.card .body p + .foot{margin-top:auto}
.price{font-family:var(--serif);font-size:1.15rem;font-style:italic;color:var(--ochre-deep)}
.play{position:absolute;inset:auto auto 1rem 1rem;width:50px;height:50px;border-radius:50%;background:rgba(251,247,239,.94);display:grid;place-items:center;box-shadow:var(--shadow)}
.play svg{width:16px;height:16px;margin-left:3px;fill:var(--poppy-deep)}
.feature-film{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;background:#FFFDF8;border:1px solid var(--line-soft);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-bottom:4rem}
.feature-film .media{position:relative;display:block;margin:0;border-radius:var(--radius)}
.feature-film img{width:100%;aspect-ratio:auto;object-fit:contain;height:auto}
.feature-film .body{padding:2rem clamp(1.5rem,4vw,3rem) 2rem 0}
@media (max-width:820px){.feature-film{grid-template-columns:1fr}.feature-film .body{padding:0 1.5rem 2rem}}
.film-card .media img{aspect-ratio:auto}

/* Steps */
.steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:1.6rem;list-style:none;padding:0;margin:0}
.steps li{background:#FFFDF8;border:1px solid var(--line-soft);border-radius:var(--radius);padding:2.6rem 1.5rem 1.8rem;position:relative;text-align:center}
.steps li::before{counter-increment:step;content:counter(step,decimal-leading-zero);font-family:var(--serif);font-size:2.4rem;font-style:italic;color:var(--ochre-deep);display:block;line-height:1;margin-bottom:.8rem}
.steps h3{font-size:1.3rem}
.steps p{font-size:.95rem;color:var(--ink-soft);margin:0}
@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.steps{grid-template-columns:1fr}}

/* Offer list */
.offers{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.offer{border-top:1px solid var(--olive);padding-top:1.3rem;position:relative}
.offer::before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;border-radius:50%;background:var(--poppy)}
.offer h3{font-size:1.45rem}
.offer p{color:var(--ink-soft);font-size:.97rem}
@media (max-width:820px){.offers{grid-template-columns:1fr}}

/* Forms */
.form{background:#FFFDF8;border:1px solid var(--line-soft);border-radius:var(--radius);padding:clamp(1.5rem,4vw,2.6rem);box-shadow:var(--shadow)}
.form .row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media (max-width:620px){.form .row{grid-template-columns:1fr}}
.field{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.1rem}
label{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft)}
input,select,textarea{font:inherit;font-weight:300;color:var(--ink);background:var(--ivory);border:1px solid var(--line);border-radius:4px;padding:.8rem .9rem;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--poppy);box-shadow:0 0 0 3px rgba(211,47,28,.14)}
textarea{min-height:140px;resize:vertical}
.signup{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,4rem);align-items:center;background:linear-gradient(135deg,var(--seed),var(--petal));border:1px solid var(--line-soft);border-radius:var(--radius);padding:clamp(1.8rem,5vw,3.5rem)}
.signup form{display:flex;gap:.6rem;flex-wrap:wrap}
.signup input{flex:1 1 220px;background:#FFFDF8}
@media (max-width:820px){.signup{grid-template-columns:1fr}}

/* Stats */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem}
.stat{background:#FFFDF8;border:1px solid var(--line-soft);border-radius:var(--radius);padding:2rem 1.6rem;text-align:center}
.stat strong{display:block;font-family:var(--serif);font-weight:400;font-size:clamp(2rem,3.4vw,3rem);line-height:1.1;color:var(--oxblood);margin-bottom:.4rem}
.stat span{font-size:.74rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}
@media (max-width:700px){.stats{grid-template-columns:1fr}}
.tool-list{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:0}
.tool-list li{border:1px solid var(--sage-light);border-radius:999px;padding:.45rem 1.1rem;background:#FFFDF8;font-size:.92rem}

/* Footer */
.site-footer{background:var(--black);color:#E9E2D6;padding:5rem 0 2rem;margin-top:0;position:relative;z-index:56}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--poppy) 30%,var(--poppy) 70%,transparent);opacity:.85}
.site-footer a{color:#F1E9DC;text-decoration:none}
.site-footer a:hover{color:var(--petal);text-decoration:underline;text-decoration-color:var(--poppy)}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2.5rem;align-items:start}
.foot-brand{display:flex;align-items:center;gap:1.4rem;text-decoration:none!important}
.foot-mark{width:auto;height:150px;filter:drop-shadow(1px 0 0 rgba(241,233,220,.55)) drop-shadow(-1px 0 0 rgba(241,233,220,.55)) drop-shadow(0 1px 0 rgba(241,233,220,.55)) drop-shadow(0 -1px 0 rgba(241,233,220,.55))}
.foot-word{width:auto;height:50px}
.foot-tag{margin-top:1.4rem;max-width:34ch;font-family:var(--serif);font-style:italic;font-size:1.15rem!important;color:#EBD9CF!important}
.site-footer p{color:#C9C1B4;font-size:.95rem}
.site-footer h4{font-family:var(--sans);font-size:.72rem;letter-spacing:.26em;text-transform:uppercase;color:var(--gold-light);font-weight:400;margin:1rem 0 1.1rem}
.site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.socials{display:flex;gap:.7rem;margin-top:1.2rem}
.socials a{width:42px;height:42px;border:1px solid rgba(255,255,255,.22);border-radius:50%;display:grid;place-items:center;transition:background .2s,border-color .2s}
.socials a:hover{background:var(--poppy-deep);border-color:var(--poppy-deep);text-decoration:none}
.socials svg{width:17px;height:17px;fill:#F1E9DC}
.footer-base{border-top:1px solid rgba(176,138,74,.32);margin-top:3.5rem;padding-top:1.5rem;font-size:.8rem;letter-spacing:.04em;color:#A39B8F;display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}
@media (max-width:760px){.footer-grid{grid-template-columns:1fr 1fr}.footer-grid > div:first-child{grid-column:1/-1}.foot-mark{height:120px}.foot-word{height:42px}}

@media (max-width:480px){.tile figcaption{font-size:1rem}.tile .draft-tag{display:none}}
@media (max-width:620px){
  .filters{flex-wrap:nowrap;overflow-x:auto;margin-left:calc(-1*clamp(1.25rem,4vw,2.5rem));margin-right:calc(-1*clamp(1.25rem,4vw,2.5rem));padding:0 clamp(1.25rem,4vw,2.5rem) .4rem;scrollbar-width:none}
  .filters::-webkit-scrollbar{display:none}
  .filters button{flex:0 0 auto}
}

/* Poppy frame — a fine inset double line with hand-drawn poppy corners and two sparse seed-pod sprigs.
   Decorative only (aria-hidden, pointer-events:none). It lives in the side gutters, so it is shown only on
   screens wide enough that it never touches content; the footer and lightbox sit above it. */
.poppy-frame{display:none}
@media (min-width:1024px){
  .poppy-frame{display:block;position:fixed;inset:0;z-index:55;pointer-events:none}
  .poppy-frame::before{content:"";position:absolute;inset:8px;border:1px solid rgba(28,26,24,.2)}
  .pf{position:absolute;background:no-repeat center/contain;--s:.8}
  .pf.tl,.pf.tr{top:-4px;width:60px;height:150px;background-image:url("../images/brand/corner-tl.svg")}
  .pf.bl,.pf.br{bottom:-4px;width:60px;height:170px;background-image:url("../images/brand/corner-bl.svg")}
  .pf.tr{background-image:url("../images/brand/corner-tr.svg")}
  .pf.br{background-image:url("../images/brand/corner-br.svg")}
  .pf.sl,.pf.sr{display:none;width:40px;height:100px;background-image:url("../images/brand/sprig.svg")}
  .pf.sr{background-image:url("../images/brand/sprig-r.svg")}
  .pf.tl,.pf.bl,.pf.sl{left:-4px}
  .pf.tr,.pf.br,.pf.sr{right:-4px}
  .pf.tl{transform:scale(var(--s));transform-origin:12px 12px}
  .pf.tr{transform:scale(var(--s));transform-origin:48px 12px}
  .pf.bl{transform:scale(var(--s));transform-origin:12px 158px}
  .pf.br{transform:scale(var(--s));transform-origin:48px 158px}
  .site-header .wrap{height:92px;padding-top:6px}
  .site-header{border-bottom:0}
  .site-header::before{content:"";position:absolute;left:9px;right:9px;bottom:0;height:1px;background:var(--line-soft)}
  .site-header::after{display:none}
}
@media (min-width:1200px){
  .poppy-frame::before{inset:12px}
  .poppy-frame::after{content:"";position:absolute;inset:16px;border:1px solid rgba(147,150,128,.22)}
  .pf{--s:1}
  .pf.tl,.pf.bl,.pf.sl{left:0}.pf.tr,.pf.br,.pf.sr{right:0}
  .pf.tl,.pf.tr{top:0}.pf.bl,.pf.br{bottom:0}
  .pf.sl,.pf.sr{display:block}
  .pf.sl{top:46%}
  .pf.sr{top:62%}
  .site-header::before{left:13px;right:13px}
}
@media (min-width:1600px){.pf{--s:1.18}.pf.sl{transform:scale(1.18);transform-origin:12px 50%}.pf.sr{transform:scale(1.18);transform-origin:28px 50%}}

/* ---- batch 11 ---- */
.stats-4{grid-template-columns:repeat(4,1fr)}
@media (max-width:900px){.stats-4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:420px){.stats-4{gap:1rem}.stats-4 .stat{padding:1.4rem .8rem}}
a.stat{color:inherit;text-decoration:none;transition:border-color .3s,box-shadow .3s}
a.stat:hover{border-color:var(--poppy);box-shadow:var(--shadow)}
.stat-link{background:var(--poppy)!important;border-color:var(--poppy)!important}
.stat-link strong{color:#fff!important;font-size:clamp(1.4rem,2.2vw,1.9rem)!important}
.stat-link span{color:#fff!important}
.style-list{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.9rem 1.4rem}
.style-list li{border-left:2px solid var(--poppy);padding-left:.8rem}
.style-list strong{display:block;font-family:var(--serif);font-weight:500;font-size:1.12rem}
.style-list span{font-size:.86rem;color:var(--ink-soft);line-height:1.45}
@media (max-width:560px){.style-list{grid-template-columns:1fr}}
.brand-jump{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1.6rem}
.brand-jump a{border:1px solid var(--sage-light);border-radius:999px;padding:.4rem 1rem;background:#FFFDF8;font-size:.88rem;text-decoration:none;color:inherit}
.brand-jump a:hover{border-color:var(--poppy);color:var(--poppy)}
.brand-group{margin-bottom:3.5rem;scroll-margin-top:100px}
.brand-group h2{display:flex;align-items:baseline;gap:.8rem;flex-wrap:wrap;border-bottom:1px solid var(--line-soft);padding-bottom:.6rem;margin-bottom:1.6rem}
.brand-handle{font-family:var(--sans);font-size:.85rem;letter-spacing:.05em;color:var(--olive)}
.brand-card .media{border-radius:var(--radius)}
.brand-card .media img{aspect-ratio:auto;object-fit:contain;width:100%;height:auto;background:rgba(8,9,16,.35)}
.brand-card .media::after{bottom:36px} /* keep poppy above duration badge */
.brand-card .dur{position:absolute;right:10px;bottom:10px;background:rgba(20,18,16,.75);color:#fff;font-size:.75rem;padding:.15rem .5rem;border-radius:4px}
/* featured video — rectangular framed poster (no arch) */
.feature-film{grid-template-columns:minmax(0,520px) 1fr;padding:clamp(1.2rem,3vw,2.4rem);gap:clamp(1.6rem,4vw,3.5rem)}
.feature-film .media{border-radius:var(--radius);overflow:hidden;box-shadow:0 0 0 1px rgba(224,184,104,.35),var(--shadow);background:rgba(8,9,16,.4)}
.feature-film .media::after{content:"";position:absolute;right:10px;bottom:10px;width:32px;height:32px;inset:auto 10px 10px auto;border:0;border-radius:0;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;pointer-events:none;filter:drop-shadow(0 2px 8px rgba(0,0,0,.55))}
.feature-film img{aspect-ratio:auto;width:100%;height:auto;object-fit:contain}
.feature-film .body{padding:0}
.feature-film .dur{position:absolute;left:1rem;bottom:1.3rem;right:auto;background:rgba(20,18,16,.75);color:#fff;font-size:.75rem;padding:.15rem .5rem;border-radius:4px}
@media (max-width:820px){.feature-film{grid-template-columns:1fr}.feature-film .media{max-width:520px;width:100%;margin:0 auto}.feature-film .body{padding:0 .3rem .5rem}}

/* ================= Midnight impasto theme (Nov 2026) =================
   Re-theme around the impasto emblem + X banner textures. Overrides the light theme above.
   Contrast checked: body text #EDE4D6 on #12131c ≈ 14:1; soft text #CDBFAE ≈ 9.8:1; gold #E0B868 ≈ 9:1. */
:root{
  --midnight:#0d0f1a; --midnight-2:#151826; --midnight-3:#1d2133; --glow:#E0A64A; --gold:#E0B868;
  --ink:#EDE4D6; --ink-soft:#CDBFAE; --olive:#C9CDB4; --oxblood:#F08A74; --ochre-deep:#E0B868;
  --line:rgba(237,228,214,.16); --line-soft:rgba(237,228,214,.09);
  --shadow:0 24px 48px -26px rgba(0,0,0,.85);
  --tex:url("../images/brand/impasto-texture.jpg?v=2");
}
html{background:var(--midnight)}
body{color:var(--ink);background:var(--midnight) var(--tex) center top/600px auto repeat;}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(900px 600px at 80% 0%,rgba(224,166,74,.10),transparent 65%),linear-gradient(rgba(13,15,26,.55),rgba(13,15,26,.55))}
h1,h2,h3,h4{color:#F7EFE2}
h1 em,h2 em,.hero h1 em{color:#F0533A}
a{color:#F5806A}a:hover{color:var(--gold)}
::selection{background:#A8241A;color:#fff}
.eyebrow{color:var(--gold)}
.lede,.muted,.route p,.working{color:var(--ink-soft)}
/* header */
.site-header{background:rgba(13,15,26,.82);border-bottom-color:var(--line)}
.site-header::after{background:linear-gradient(90deg,transparent,rgba(224,184,104,.35) 20%,rgba(224,184,104,.35) 80%,transparent)}
.brand,.brand:hover{color:#F7EFE2}
.brand-mark{height:62px;width:62px;border-radius:50%;filter:drop-shadow(0 0 10px rgba(224,166,74,.35))}
.bw-sub{color:var(--gold)}
.nav a{color:var(--ink)}
.nav a:hover{color:var(--gold);border-color:rgba(224,184,104,.5)}
.nav a[aria-current="page"]{color:#fff;border-color:#F0533A}
.nav-toggle{color:var(--ink);border-color:var(--line)}
@media (max-width:980px){.nav{background:rgba(13,15,26,.97);border-bottom-color:var(--line)}}
@media (max-width:520px){.brand-mark{height:50px;width:50px}}
/* buttons */
.btn{border-color:rgba(237,228,214,.7);color:var(--ink)}
.btn:hover{background:var(--ink);color:var(--midnight)}
.btn.solid{background:#C62A18;border-color:#C62A18;color:#fff}
.btn.solid:hover{background:#E0391F;border-color:#E0391F;color:#fff}
.btn.soft{border-color:rgba(237,228,214,.45);color:var(--ink);background:rgba(13,15,26,.45)}
.btn.soft:hover{background:var(--ink);border-color:var(--ink);color:var(--midnight)}
.btn[disabled],.btn.is-disabled,.btn[disabled]:hover,.btn.is-disabled:hover{color:var(--ink-soft);border-color:var(--line);background:transparent}
/* home hero: painted banner behind */
.hero{position:relative;background:url("../images/brand/impasto-banner-2400.jpg") center/cover no-repeat;isolation:isolate}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,11,20,.92) 0,rgba(10,11,20,.78) 45%,rgba(10,11,20,.35) 100%),linear-gradient(0deg,var(--midnight) 0,transparent 22%)}
@media (max-width:820px){.hero{background-image:url("../images/brand/impasto-banner-1200.jpg");background-position:60% top;background-size:auto 520px}.hero::before{background:linear-gradient(180deg,rgba(10,11,20,.25) 0,rgba(10,11,20,.75) 380px,var(--midnight) 560px)}}
.hero-art::before{border-color:rgba(224,184,104,.55)}
.hero-art::after{width:46px;height:46px;top:-23px;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;border-radius:0}
.hero-art figcaption{background:rgba(13,15,26,.92);color:var(--ink);border-left-color:#F0533A}
.page-hero{position:relative;background:linear-gradient(180deg,rgba(13,15,26,.2),var(--midnight)),url("../images/brand/impasto-banner-2400.jpg") center 30%/cover no-repeat}
.page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,11,20,.9),rgba(10,11,20,.55));pointer-events:none}
.page-hero > .wrap{position:relative}
.page-hero.center::before{background:rgba(10,11,20,.72)}
/* tinted sections become painted midnight bands, divided by a strip of banner poppies */
.tint-blush,.tint-sage,.tint-lav,.tint-seed,.tint-petal,.tint-peach{background:linear-gradient(180deg,rgba(29,33,51,.55),rgba(21,24,38,.75)),var(--tex) center/600px auto}
section[class*="tint-"]{padding-top:calc(clamp(4.5rem,9vw,8rem) + 34px)}
section[class*="tint-"]::before{top:0;left:0;right:0;transform:none;width:auto;height:46px;background:linear-gradient(180deg,transparent 40%,rgba(21,24,38,.9)),url("../images/brand/impasto-poppy-strip.jpg") center/auto 100% repeat-x;opacity:.9}
.quote-band{background:radial-gradient(520px 360px at 50% 32%,rgba(224,166,74,.28),transparent 70%),linear-gradient(180deg,rgba(13,15,26,.6),rgba(13,15,26,.8)),var(--tex) center/600px auto!important}
.quote-band blockquote{color:#F7EFE2}
.quote-band cite{color:var(--gold)}
.quote-art{margin:0 auto 1.6rem;max-width:360px;padding:10px;position:relative}
.quote-art::before{content:"";position:absolute;inset:0;border:1px solid rgba(224,184,104,.45);border-radius:4px;pointer-events:none}
.quote-art::after{content:"";position:absolute;left:50%;top:-18px;width:36px;height:36px;transform:translateX(-50%);background:url("../images/brand/frame-poppy.png") center/contain no-repeat;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45))}
.quote-emblem{width:100%;height:auto;max-width:360px;border-radius:4px!important;object-fit:contain!important;filter:drop-shadow(0 0 28px rgba(224,166,74,.35))}
.quote-band cite a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ornament,.divider{filter:brightness(1.6) saturate(1.2)}
/* cards & surfaces */
.card,.steps li,.form,.stat,.tool-list li,.brand-jump a,.feature-film{background:rgba(21,24,38,.88)!important;border-color:var(--line)!important;color:var(--ink)}
.stat strong{color:#F0533A}
.stat-link{background:#C62A18!important}
.route,.route:hover{color:var(--ink)}
.route img,.tile button{box-shadow:0 0 0 1px rgba(224,184,104,.28),var(--shadow)}
.tile figcaption{color:var(--ink)}
.filters button{color:var(--ink);border-color:var(--line)}
.filters button:hover{background:rgba(198,42,24,.25);border-color:#C62A18;color:#fff}
.filters button[aria-pressed="true"]{background:#C62A18;border-color:#C62A18;color:#fff}
.draft-tag{background:rgba(224,184,104,.12);color:var(--gold);border-color:rgba(224,184,104,.5)}
.draft-note{background:rgba(224,184,104,.08);border-color:rgba(224,184,104,.45);color:var(--ink)}
label{color:var(--ink-soft)}
input,select,textarea,.signup input{background:rgba(13,15,26,.85);color:var(--ink);border-color:rgba(237,228,214,.28)}
.signup{background:linear-gradient(135deg,rgba(29,33,51,.92),rgba(110,31,28,.55)),var(--tex) center/800px auto;border-color:var(--line)}
.play{background:rgba(13,15,26,.8)}
.play svg{fill:#fff}
.split > img{box-shadow:0 0 0 1px rgba(224,184,104,.28),var(--shadow)}
/* footer: painted poppy band on top, midnight below */
.site-footer{background:linear-gradient(180deg,rgba(8,9,16,0) 0,rgba(8,9,16,.7) 150px,#08090f 240px),url("../images/brand/impasto-banner-2400.jpg") center top/cover no-repeat,#08090f;padding-top:9rem}
@media (max-width:760px){.site-footer{background:linear-gradient(180deg,rgba(8,9,16,0) 0,rgba(8,9,16,.7) 110px,#08090f 200px),url("../images/brand/impasto-banner-1200.jpg") center top/auto 260px no-repeat,#08090f;padding-top:7rem}}
.foot-mark{height:150px;width:150px;border-radius:50%;filter:drop-shadow(0 0 18px rgba(224,166,74,.35))}
@media (max-width:760px){.foot-mark{height:110px;width:110px}}
.site-footer h4{color:var(--gold)}
/* decorative frame on dark */
@media (min-width:1024px){.poppy-frame::before{border-color:rgba(224,184,104,.22)}.poppy-frame::after{border-color:rgba(224,184,104,.12)}.site-header::before{background:var(--line)}}
/* Routes: centred flex so 5 cards (shop hidden) leave no gap */
.routes{display:flex;flex-wrap:wrap;justify-content:center}
.routes .route{flex:0 0 calc((100% - 4rem)/3)}
@media (max-width:900px){.routes .route{flex-basis:calc((100% - 2rem)/2)}}
@media (max-width:560px){.routes .route{flex-basis:calc((100% - 1rem)/2)}}


/* ================= Impasto4: deeper painted texture + no-arch frames (5 Nov 2026) ================= */
:root{ --tex:url("../images/brand/impasto-texture.jpg?v=5"); --glow-tex:url("../images/brand/impasto-glow.jpg?v=1"); }
body{background:var(--midnight) var(--tex) center top/520px auto repeat;}
body::before{background:
  radial-gradient(900px 620px at 78% -4%,rgba(224,166,74,.16),transparent 62%),
  linear-gradient(rgba(10,11,20,.42),rgba(10,11,20,.58)),
  var(--glow-tex) 70% -10%/min(1100px,90vw) auto no-repeat;}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.18;mix-blend-mode:soft-light;background:var(--tex) 0 0/420px auto repeat}
.hero{background-image:url("../images/brand/impasto-banner-2400.jpg?v=4")}
@media (max-width:820px){.hero{background-image:url("../images/brand/impasto-banner-1200.jpg?v=4")}}
.page-hero{background-image:linear-gradient(180deg,rgba(13,15,26,.25),var(--midnight)),url("../images/brand/impasto-banner-2400.jpg?v=4")}
.tint-blush,.tint-sage,.tint-lav,.tint-seed,.tint-petal,.tint-peach{background:linear-gradient(180deg,rgba(29,33,51,.62),rgba(16,18,28,.82)),var(--tex) center/480px auto}
section[class*="tint-"]::before{background:linear-gradient(180deg,transparent 35%,rgba(16,18,28,.92)),url("../images/brand/impasto-poppy-strip.jpg?v=4") center/auto 100% repeat-x}
.site-footer{background:linear-gradient(180deg,rgba(8,9,16,0) 0,rgba(8,9,16,.72) 150px,#08090f 240px),url("../images/brand/impasto-banner-2400.jpg?v=4") center top/cover no-repeat,#08090f}
@media (max-width:760px){.site-footer{background:linear-gradient(180deg,rgba(8,9,16,0) 0,rgba(8,9,16,.72) 110px,#08090f 200px),url("../images/brand/impasto-banner-1200.jpg?v=4") center top/auto 260px no-repeat,#08090f}}
/* kill any leftover arch radii */
.hero-art img,.route img,.strip img,.split > img,.tile button,.card .media,.steps li,.feature-film .media{border-radius:var(--radius)!important}
.hero-art img,.route img,.strip img,.tile img,.card .media img,.brand-card .media img,.feature-film img,.framed-art{object-fit:contain!important;height:auto}
.route img,.tile img,.card .media img,.strip img{aspect-ratio:auto!important}
/* painted poppy frame for still art */
.framed-art{position:relative}
.art-frame{position:relative;display:inline-block;max-width:100%}
.art-frame::before{content:"";position:absolute;inset:0;border:1px solid rgba(224,184,104,.4);border-radius:var(--radius);pointer-events:none;z-index:1}
.art-frame::after{content:"";position:absolute;right:-6px;bottom:-6px;width:40px;height:40px;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;z-index:2;pointer-events:none;filter:drop-shadow(0 3px 8px rgba(0,0,0,.55))}
/* media kit showcase */
.media-kit{display:grid;grid-template-columns:1.4fr 1fr;gap:clamp(1.6rem,4vw,3rem);align-items:center}
.media-kit-card{background:rgba(21,24,38,.9);border:1px solid rgba(224,184,104,.35);border-radius:var(--radius);padding:1.6rem 1.5rem;box-shadow:var(--shadow)}
.media-kit-card .meta{font-size:.68rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin:0 0 .8rem}
.media-kit-card ul{margin:0;padding:0 0 0 1.1rem;color:var(--ink);display:grid;gap:.45rem}
@media (max-width:820px){.media-kit{grid-template-columns:1fr}}
/* learn cards with inline aspect override */
.card .media img[style*="aspect-ratio"]{aspect-ratio:auto!important}

/* Impasto4 frame polish: clearer gold outline + poppy accent on stills */
.tile button{box-shadow:0 0 0 1px rgba(224,184,104,.55),0 18px 36px -24px rgba(0,0,0,.85)!important;border-radius:4px!important}
.tile button::before{content:"";position:absolute;inset:6px;border:1px solid rgba(224,184,104,.35);border-radius:2px;pointer-events:none;z-index:2}
.tile button::after{width:34px!important;height:34px!important;right:4px!important;bottom:4px!important;opacity:1!important}
.route{position:relative}
.route img{border-radius:4px!important;box-shadow:0 0 0 1px rgba(224,184,104,.5),var(--shadow)!important}
.route::after{content:"";position:absolute;right:10px;top:10px;width:32px;height:32px;background:url("../images/brand/frame-poppy.png") center/contain no-repeat;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.55));z-index:2}
.strip img{border-radius:4px!important;box-shadow:0 0 0 1px rgba(224,184,104,.45)!important}
.hero-art img{border-radius:4px!important}
.hero-art::before{border-radius:4px!important;border-color:rgba(224,184,104,.55)!important}
.card .media{border-radius:4px!important}
.card .media::after{width:30px!important;height:30px!important}
.feature-film .media{border-radius:4px!important}

/* My style readability over impasto texture (Nov 2026) */
.style-panel{position:relative;padding:1.65rem 1.75rem 1.9rem;border-radius:10px;
  background:linear-gradient(165deg,rgba(10,11,20,.92),rgba(21,24,38,.86));
  border:1px solid rgba(224,184,104,.32);box-shadow:0 20px 44px -26px rgba(0,0,0,.92);
  color:#F3EADF;text-shadow:0 1px 2px rgba(0,0,0,.55)}
.style-panel .eyebrow{color:var(--gold)}
.style-panel h2,.style-panel h3{color:#FBF4E8;text-shadow:0 1px 3px rgba(0,0,0,.6)}
.style-panel p{color:#E8DCC8}
.style-panel .style-list strong{color:#FBF4E8}
.style-panel .style-list span{color:#D9CDB8}
.style-panel .tool-list li{color:#E8DCC8;border-color:rgba(224,184,104,.35);background:rgba(13,15,26,.55)}
