:root { --ink:#3f382f; --muted:#70695f; --paper:#f6f2eb; --cream:#ebe3d6; --gold:#806c51; --clay:#9a6f52; --deep:#57473c; --line:rgba(73,61,50,.18); --serif:"Playfair Display", Georgia, serif; --sans:"DM Sans", Arial, sans-serif; --mono:"DM Mono", monospace; }
* { box-sizing:border-box; } html { scroll-behavior:smooth; } body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); font-size:16px; } .grain { position:fixed; inset:0; opacity:.14; pointer-events:none; z-index:10; background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E"); } a { color:inherit; text-decoration:none; } .container { width:min(1180px, calc(100% - 64px)); margin:0 auto; } .site-header { position:absolute; z-index:5; top:20px; left:50%; width:min(1180px, calc(100% - 42px)); height:100px; transform:translateX(-50%); display:flex; align-items:center; justify-content:space-between; padding:0 18px; color:#fff8ee; background:transparent; border:0; box-shadow:none; text-shadow:0 1px 16px rgba(34,24,16,.42); } .brand img { display:block; width:231px; height:87px; object-fit:contain; filter:drop-shadow(0 8px 18px rgba(34,24,16,.24)); } nav { display:flex; align-items:center; gap:29px; font-size:12px; font-weight:600; letter-spacing:.01em; } nav a { transition:color .2s; } nav a:hover { color:var(--gold); } .nav-cta { margin-left:8px; padding:11px 16px; border:1px solid rgba(255,248,238,.72); border-radius:30px; color:#fff8ee; } .nav-cta span { margin-left:8px; } .menu-toggle { display:none; }
.hero { position:relative; min-height:min(810px,100vh); overflow:hidden; color:#fff; display:grid; align-items:end; background:#070604; } .hero-image { position:absolute; inset:0; background:url('crina-hero-black-2.png') 66% center/cover no-repeat; transform:scale(1.01); } .hero-shade { position:absolute; inset:0; background:radial-gradient(circle at 62% 28%, rgba(255,244,224,.18), transparent 22%), linear-gradient(90deg, rgba(7,6,4,.88) 0%,rgba(10,8,6,.62) 34%,rgba(10,8,6,.08) 62%,rgba(7,6,4,.38) 100%), linear-gradient(0deg,rgba(7,6,4,.72),transparent 48%); } .hero-content { z-index:1; padding-bottom:118px; } h1,h2,h3,p { margin-top:0; } h1,h2,h3,blockquote { font-family:var(--serif); font-weight:500; } h1 { margin:0 0 20px; font-size:clamp(64px,8vw,118px); line-height:.91; letter-spacing:-.052em; max-width:720px; color:#fff8ec; text-shadow:0 18px 44px rgba(0,0,0,.34); } em { font-weight:500; } .hero-copy { max-width:470px; margin-bottom:30px; font-size:17px; line-height:1.62; color:#f1dfc4; } .button { display:inline-flex; gap:25px; align-items:center; padding:15px 20px; border-radius:2px; font-size:12px; font-weight:600; transition:transform .2s, background .2s; } .button:hover { transform:translateY(-2px); } .button-light { color:#15110d; background:#fff4df; } .button-dark { color:#fff; background:var(--deep); } .button span { font-size:17px; line-height:.6; }
.section { padding:128px 0; } .intro { background:#fbf9f5; } .intro-grid,.about-grid { display:grid; grid-template-columns:27% 1fr; gap:8%; } h2 { margin-bottom:27px; font-size:clamp(40px,4.5vw,64px); line-height:1.05; letter-spacing:-.045em; } .lead { max-width:644px; font-size:20px; line-height:1.58; color:var(--muted); } .text-link { display:inline-flex; gap:13px; align-items:center; margin-top:18px; border-bottom:1px solid var(--ink); padding-bottom:5px; font-size:13px; font-weight:600; } .text-link span { font-size:18px; line-height:.6; }
.ways { background:var(--cream); } .section-head { display:flex; justify-content:space-between; align-items:flex-end; gap:40px; margin-bottom:57px; } .section-head h2 { margin-bottom:0; } .section-head > p { max-width:318px; margin:0 0 5px; color:var(--muted); font-size:15px; line-height:1.55; } .service-grid { display:grid; grid-template-columns:1.12fr 1fr 1fr; border-top:1px solid var(--line); border-bottom:1px solid var(--line); } .service-card { position:relative; min-height:390px; padding:30px 30px 28px; display:flex; flex-direction:column; border-left:1px solid var(--line); } .service-card:first-child { border-left:0; } .service-card.featured { color:#fff; background:var(--deep); } .card-number { font:10px var(--mono); letter-spacing:.08em; } .lily-line { position:absolute; right:30px; top:26px; font-size:26px; color:#dcc5af; } .service-card h3 { margin:103px 0 15px; font-size:31px; letter-spacing:-.035em; } .service-card p { max-width:260px; font-size:14px; line-height:1.58; color:var(--muted); } .featured p { color:rgba(255,255,255,.75); } .service-card a { margin-top:auto; font-size:12px; font-weight:600; } .service-card a span { margin-left:8px; font-size:16px; }
.quote-section { overflow:hidden; padding-block:142px; background:#ab7e61; color:#fff9f1; } .quote-wrap { position:relative; text-align:center; } .quote-mark { position:absolute; top:-52px; left:5%; color:rgba(255,255,255,.2); font:160px/.5 var(--serif); } blockquote { position:relative; z-index:1; margin:0 auto 22px; font-size:clamp(42px,5.3vw,75px); line-height:1.08; letter-spacing:-.045em; } .quote-wrap p { font:10px var(--mono); letter-spacing:.14em; text-transform:uppercase; }
.events { background:#fbf9f5; } .event-head { margin-bottom:40px; } .event-list { border-top:1px solid var(--line); } .event { display:grid; grid-template-columns:145px 1fr auto; align-items:center; gap:25px; padding:28px 0; border-bottom:1px solid var(--line); } .event time { display:flex; align-items:center; gap:11px; } .event time strong { font:50px/.8 var(--serif); letter-spacing:-.06em; } .event time span,.event-tag { font:9px/1.35 var(--mono); letter-spacing:.1em; } .event-tag { margin-bottom:8px; color:var(--clay); } .event h3 { margin-bottom:4px; font-size:27px; letter-spacing:-.035em; } .event div > p:last-child { margin:0; color:var(--muted); font-size:13px; } .event > a { padding:12px 15px; border:1px solid var(--line); font-size:12px; } .event > a span { margin-left:7px; }
.resources { background:var(--deep); color:#fff; } .resources-grid { display:grid; grid-template-columns:1fr 1.12fr; gap:10%; align-items:center; } .resource-copy > p { max-width:340px; margin-bottom:25px; color:rgba(255,255,255,.75); line-height:1.58; } .audio-card { min-height:323px; padding:24px 27px; display:flex; flex-direction:column; background:#d6bea8; color:var(--ink); } .audio-top,.audio-bottom { display:flex; justify-content:space-between; align-items:center; font:9px var(--mono); letter-spacing:.08em; } .audio-center { display:flex; align-items:center; gap:21px; margin:auto 0; } .play-button { width:58px; height:58px; display:grid; place-items:center; padding-left:5px; border:0; border-radius:50%; background:var(--deep); color:#fff; cursor:pointer; } .audio-label { margin-bottom:7px; font:9px var(--mono); letter-spacing:.1em; color:var(--clay); } .audio-card h3 { margin:0; font-size:34px; letter-spacing:-.04em; } .audio-bottom { gap:10px; } .progress { height:1px; flex:1; background:rgba(62,54,47,.25); } .progress i { display:block; width:0; height:100%; background:var(--ink); transition:width 12s linear; } .audio-card.playing .progress i { width:100%; }
.about-band { background:#ece2d6; } .about-grid > div > p { max-width:615px; color:var(--muted); font-size:17px; line-height:1.62; } .contact { position:relative; overflow:hidden; color:#fff; background:#86634e; text-align:center; } .contact::before,.contact::after { position:absolute; content:"✧"; color:rgba(255,255,255,.13); font:250px var(--serif); } .contact::before { top:-65px; left:9%; } .contact::after { right:8%; bottom:-110px; } .contact-inner { position:relative; z-index:1; } .contact h2 { margin-bottom:16px; font-size:clamp(50px,5.6vw,78px); } .contact p { margin:0 auto 26px; max-width:400px; color:rgba(255,255,255,.78); line-height:1.55; } footer { padding:52px 0 29px; background:#302923; color:#f4ece0; } .footer-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:30px; align-items:start; } .footer-brand { display:block; width:154px; height:87px; } .footer-brand img { display:block; width:154px; height:auto; } footer p { font-size:13px; line-height:1.5; color:rgba(255,255,255,.66); } footer div > div { display:flex; gap:17px; justify-content:flex-end; font-size:12px; } footer small { grid-column:1 / -1; margin-top:30px; padding-top:17px; border-top:1px solid rgba(255,255,255,.18); font:9px var(--mono); letter-spacing:.08em; color:rgba(255,255,255,.52); }
@media (max-width:800px) { .site-header { top:12px; width:calc(100% - 30px); height:82px; padding-inline:0; } .brand img { width:189px; height:72px; } .menu-toggle { display:grid; gap:6px; padding:11px 0 11px 11px; background:transparent; border:0; cursor:pointer; } .menu-toggle span { display:block; width:25px; height:1px; background:#fff8ee; box-shadow:0 1px 10px rgba(34,24,16,.5); } nav { position:absolute; top:82px; left:0; width:100%; padding:24px; display:none; flex-direction:column; align-items:flex-start; gap:20px; color:var(--ink); text-shadow:none; background:var(--paper); border:1px solid rgba(128,108,81,.28); } nav.open { display:flex; } .nav-cta { margin:0; border-color:var(--gold); color:var(--gold); } .container { width:min(100% - 42px, 1180px); } .hero { min-height:740px; } .hero-image { background-position:63% center; } .hero-content { padding-bottom:108px; } h1 { font-size:62px; } .section { padding:82px 0; } .intro-grid,.about-grid,.resources-grid { grid-template-columns:1fr; gap:26px; } .lead { font-size:18px; } .section-head { display:block; } .section-head > p { margin-top:20px; } .service-grid { grid-template-columns:1fr; } .service-card,.service-card:first-child { min-height:310px; border-left:0; border-top:1px solid var(--line); } .service-card:first-child { border-top:0; } .service-card h3 { margin-top:73px; } .event { grid-template-columns:76px 1fr; gap:14px; } .event > a { grid-column:2; justify-self:start; } .event time strong { font-size:41px; } .event h3 { font-size:24px; } .audio-card { min-height:290px; } .footer-grid { grid-template-columns:1fr 1fr; } footer div > div { justify-content:flex-start; flex-direction:column; gap:8px; } }

body { background:#11100d; color:#f5ead8; }
.grain { opacity:.1; mix-blend-mode:screen; }
.intro { background:#11100d; color:#f5ead8; border-top:1px solid rgba(255,244,224,.08); }
.intro .lead,.section-head > p,.service-card p,.event div > p:last-child,.about-grid > div > p { color:#b6aa9a; }
.ways { background:#1b1713; color:#f5ead8; }
.service-grid,.event-list { border-color:rgba(245,234,216,.16); }
.service-card { border-color:rgba(245,234,216,.16); background:#211c17; }
.service-card.featured { background:#806c51; color:#fff8ec; }
.featured p { color:rgba(255,248,236,.76); }
.quote-section { background:#080705; color:#fff8ec; }
.quote-mark { color:rgba(182,150,100,.18); }
.events { background:#eee7dc; color:#28221d; }
.resources { background:#14110e; }
.audio-card { background:#e0d0bb; }
.about-band { background:#181411; color:#f5ead8; }
.contact { background:#070604; }
.text-link { border-bottom-color:currentColor; }
.event > a { border-color:rgba(40,34,29,.22); }
footer { background:#070604; }

@media (max-width:800px) {
  .hero-image { background-position:59% center; }
  .hero-shade { background:linear-gradient(90deg, rgba(7,6,4,.86), rgba(7,6,4,.14) 72%), linear-gradient(0deg, rgba(7,6,4,.75), transparent 50%); }
  .hero-copy { max-width:335px; }
}

.intro-grid,.about-grid { grid-template-columns:1fr; gap:0; }
.intro-grid > div,.about-grid > div { max-width:850px; }
.resource-copy > p { max-width:340px; margin-bottom:25px; color:rgba(255,255,255,.75); line-height:1.58; }
.contact p { margin:0 auto 26px; max-width:400px; color:rgba(255,255,255,.78); line-height:1.55; }

.button,.nav-cta,.event > a { border-radius:12px; }
.service-card,.audio-card { border-radius:14px; overflow:hidden; }
.service-grid { gap:12px; border:0; }
.service-card { border:1px solid rgba(245,234,216,.16); }
.service-card:first-child { border-left:1px solid rgba(245,234,216,.16); }
.play-button { border-radius:14px; }
nav.open { border-radius:14px; }

.brand img { width:300px; height:113px; }
.site-header { height:126px; }
.footer-brand,.footer-brand img { width:200px; }
.footer-brand { height:113px; }

@media (max-width:800px) {
  .brand img { width:246px; height:94px; }
  .site-header { height:104px; }
  nav { top:104px; }
}

h1,h2,h3,blockquote { font-family:"Cormorant Garamond", Garamond, Georgia, serif; font-weight:300; }
h1 { font-size:clamp(70px,8.4vw,124px); line-height:.9; letter-spacing:0; }
h2 { font-size:clamp(46px,5vw,72px); line-height:1; letter-spacing:0; }
h3 { font-size:34px; letter-spacing:0; }
em { font-style:italic; font-weight:300; }
blockquote { letter-spacing:0; }

@media (max-width:800px) {
  h1 { font-size:66px; }
  h2 { font-size:46px; }
}

body { background:#050505; color:#fff; }
.container { width:min(1180px, calc(100% - 64px)); }
.site-header { top:0; width:min(1180px, calc(100% - 64px)); padding:18px 0 0; color:#fff; text-shadow:0 10px 28px rgba(0,0,0,.5); }
.site-header::before { position:fixed; content:""; top:0; left:0; right:0; height:178px; z-index:-1; pointer-events:none; background:linear-gradient(180deg, rgba(0,0,0,.82) 0%, rgba(0,0,0,.48) 42%, rgba(0,0,0,0) 100%); }
nav { color:#fff; }
nav a:hover { color:#fff; opacity:.72; }
.nav-cta { color:#fff; border-color:rgba(255,255,255,.72); background:rgba(0,0,0,.08); }
.hero-copy,.lead,.section-head > p,.service-card p,.event div > p:last-child,.about-grid > div > p,.resource-copy > p,.contact p,footer p,footer small { color:rgba(255,255,255,.72); }
h1,h2,h3,blockquote,.event time strong { font-family:"Cormorant Garamond", Garamond, Georgia, serif; font-style:italic; font-weight:300; text-transform:none; letter-spacing:0; color:#fff; }
h1 { max-width:760px; font-size:clamp(72px,8.2vw,120px); line-height:.9; }
h2 { font-size:clamp(48px,5vw,72px); line-height:.98; }
h3 { font-size:34px; line-height:1.02; }
em { font-style:italic; font-weight:300; }
.button { color:#050505; background:#fff; }
.button-dark { color:#050505; background:#fff; }
.button-light { color:#050505; background:#fff; }
.intro,.ways,.quote-section,.events,.resources,.about-band,.contact,footer { background:#050505; color:#fff; }
.intro { border-top:1px solid rgba(255,255,255,.1); }
.service-grid,.event-list { border-color:rgba(255,255,255,.16); }
.service-card,.service-card.featured { background:#0f0f0f; border-color:rgba(255,255,255,.16); color:#fff; }
.featured p { color:rgba(255,255,255,.72); }
.audio-card { background:#101010; color:#fff; border:1px solid rgba(255,255,255,.16); }
.audio-label,.event-tag { color:#fff; }
.play-button { background:#fff; color:#050505; }
.progress { background:rgba(255,255,255,.25); }
.progress i { background:#fff; }
.quote-mark { color:rgba(255,255,255,.12); }
.event > a { border-color:rgba(255,255,255,.28); color:#fff; }
.text-link { border-bottom-color:rgba(255,255,255,.78); color:#fff; }
.contact::before,.contact::after { color:rgba(255,255,255,.08); }

@media (max-width:800px) {
  .container { width:min(100% - 42px, 1180px); }
  .site-header { width:calc(100% - 42px); top:0; padding-top:10px; }
  .site-header::before { height:150px; }
  nav { top:104px; color:#fff; background:linear-gradient(180deg, rgba(0,0,0,.94), rgba(9,9,9,.88)); border-color:rgba(255,255,255,.18); }
  .nav-cta { color:#fff; border-color:rgba(255,255,255,.62); }
  h1 { font-size:64px; }
  h2 { font-size:44px; }
}

.hero-copy,.intro .lead,.section-head > p,.service-card p,.featured p,.event div > p:last-child,.about-grid > div > p,.resource-copy > p,.contact p,footer p,footer small { color:rgba(255,255,255,.76); }
.button,.button-light,.button-dark { color:#fff; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.36); }
.button:hover { background:rgba(255,255,255,.14); }

:root { --logo-content-align:32px; }
.brand img { width:400px; height:150px; }
.brand img,.footer-brand img { opacity:1; mix-blend-mode:normal; }
.brand {
  position:relative;
  display:block;
  isolation:isolate;
}
.footer-brand {
  position:relative;
  display:block;
  isolation:isolate;
}
.brand img {
  filter:
    brightness(0) invert(1)
    drop-shadow(0 0 7px rgba(255,255,255,.5))
    drop-shadow(0 0 20px rgba(210,228,255,.22))
    drop-shadow(0 10px 24px rgba(0,0,0,.42));
  transform-origin:center;
  transition:transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease;
}
.brand:hover img,.brand:focus-visible img {
  transform:scale(1.08);
  filter:
    brightness(0) invert(1)
    drop-shadow(0 0 11px rgba(255,255,255,.74))
    drop-shadow(0 0 34px rgba(218,234,255,.44))
    drop-shadow(0 14px 30px rgba(0,0,0,.48));
}
.brand::before,
.brand::after {
  content:none;
}
.footer-brand img {
  filter:
    brightness(0) invert(1)
    drop-shadow(0 0 7px rgba(255,255,255,.5))
    drop-shadow(0 0 20px rgba(210,228,255,.22))
    drop-shadow(0 6px 16px rgba(0,0,0,.32));
  transform-origin:center;
  transition:transform .55s cubic-bezier(.2,.8,.2,1), filter .55s ease;
}
.footer-brand:hover img,.footer-brand:focus-visible img {
  transform:scale(1.08);
  filter:
    brightness(0) invert(1)
    drop-shadow(0 0 11px rgba(255,255,255,.74))
    drop-shadow(0 0 34px rgba(218,234,255,.44))
    drop-shadow(0 10px 24px rgba(0,0,0,.42));
}
.site-header { height:168px; }
main .container, footer .container { padding-left:var(--logo-content-align); }
.footer-brand,.footer-brand img { width:400px; }
.footer-brand { height:150px; }

@media (max-width:800px) {
  :root { --logo-content-align:22px; }
  .brand img { width:min(400px, calc(100vw - 86px)); height:auto; }
  .footer-brand,.footer-brand img { width:min(400px, calc(100vw - 86px)); }
  .footer-brand { height:auto; min-height:120px; }
  .site-header { height:142px; }
  nav { top:142px; }
}

:root {
  --font-heading-wow:"Cormorant Garamond", Garamond, Georgia, serif;
  --font-body-wow:"Barlow", "DM Sans", Arial, sans-serif;
  --glass-line:rgba(255,255,255,.24);
  --glass-fill:rgba(255,255,255,.045);
  --glass-fill-strong:rgba(255,255,255,.075);
}

body {
  font-family:var(--font-body-wow);
  font-weight:300;
  letter-spacing:.004em;
}

body::before {
  content:"";
  position:fixed;
  inset:-20% -10% auto;
  height:620px;
  z-index:-2;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 16%, rgba(255,255,255,.16), transparent 23%),
    radial-gradient(circle at 70% 4%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 58%);
  filter:blur(28px);
}

.site-header {
  align-items:flex-start;
}

nav {
  margin-top:15px;
  padding:0;
  gap:29px;
  border-radius:16px;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

nav a {
  padding:10px 12px;
  border-radius:12px;
}

.nav-cta {
  margin-left:6px;
  padding:10px 14px;
  background:rgba(255,255,255,.09);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14);
}

.hero {
  isolation:isolate;
  min-height:min(900px,100vh);
}

.hero::before,
.hero::after {
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:1;
}

.hero::before {
  left:clamp(30px,8vw,140px);
  bottom:92px;
  width:clamp(220px,28vw,440px);
  height:clamp(220px,28vw,440px);
  border:1px solid rgba(255,255,255,.08);
  border-radius:38% 62% 46% 54% / 52% 40% 60% 48%;
  background:radial-gradient(circle at 45% 42%, rgba(255,255,255,.12), transparent 52%);
  filter:blur(.1px);
  opacity:.62;
  transform:rotate(-13deg);
}

.hero::after {
  inset:auto 0 0;
  height:220px;
  background:linear-gradient(180deg, transparent, #050505 72%);
}

.hero-shade {
  background:
    radial-gradient(circle at 42% 38%, rgba(255,255,255,.16), transparent 20%),
    radial-gradient(circle at 76% 25%, rgba(255,255,255,.08), transparent 19%),
    linear-gradient(90deg, rgba(5,5,5,.94) 0%, rgba(5,5,5,.72) 31%, rgba(5,5,5,.12) 62%, rgba(5,5,5,.5) 100%),
    linear-gradient(0deg, rgba(5,5,5,.78), transparent 48%);
}

.hero-content {
  position:relative;
  z-index:2;
}

h1,h2,h3,blockquote,.event time strong {
  font-family:var(--font-heading-wow);
  font-style:italic;
  font-weight:300;
}

h1 {
  letter-spacing:-.018em;
  text-wrap:balance;
}

h2, blockquote {
  letter-spacing:-.012em;
  text-wrap:balance;
}

.hero-copy,.intro .lead,.section-head > p,.service-card p,.featured p,.event div > p:last-child,.about-grid > div > p,.resource-copy > p,.contact p,footer p,footer small {
  font-weight:300;
}

.button,.button-light,.button-dark,.event > a,.text-link,.service-card a {
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.button,.button-light,.button-dark,.text-link,.service-card a,.event > a {
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.18), 0 20px 70px rgba(0,0,0,.22);
}

.button::before,
.text-link::before,
.service-card a::before,
.event > a::before,
.service-card::before,
.audio-card::before,
.quote-wrap::before,
.contact-inner::before {
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  padding:1px;
  background:linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,.08) 36%, rgba(255,255,255,0) 55%, rgba(255,255,255,.28));
  -webkit-mask:linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite:xor;
  mask-composite:exclude;
  pointer-events:none;
}

.service-card,.audio-card {
  position:relative;
  background:linear-gradient(180deg, var(--glass-fill-strong), rgba(255,255,255,.018));
  box-shadow:inset 0 1px 1px rgba(255,255,255,.1), 0 24px 80px rgba(0,0,0,.18);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}

.service-card.featured {
  background:
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.12), transparent 25%),
    linear-gradient(180deg, rgba(255,255,255,.085), rgba(255,255,255,.018));
}

.service-card {
  transition:transform .35s ease, background .35s ease, border-color .35s ease;
}

.service-card:hover {
  transform:translateY(-6px);
  background:linear-gradient(180deg, rgba(255,255,255,.095), rgba(255,255,255,.025));
  border-color:rgba(255,255,255,.28);
}

.lily-line {
  display:none;
}

.service-card::after,
.quote-wrap::after,
.contact-inner::after {
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  opacity:.16;
  background:url("data:image/svg+xml,%3Csvg width='420' height='520' viewBox='0 0 420 520' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M210 506 C210 410 209 320 211 222' opacity='.55'/%3E%3Cpath d='M210 226 C172 158 148 91 165 18 C204 67 219 130 210 226Z'/%3E%3Cpath d='M210 226 C246 156 272 91 256 18 C218 70 203 132 210 226Z'/%3E%3Cpath d='M210 244 C145 186 91 138 62 66 C130 91 185 150 210 244Z' opacity='.9'/%3E%3Cpath d='M210 244 C276 186 331 138 360 66 C292 91 237 150 210 244Z' opacity='.9'/%3E%3Cpath d='M198 259 C129 247 73 226 22 178 C94 164 160 194 198 259Z' opacity='.68'/%3E%3Cpath d='M222 259 C291 247 347 226 398 178 C326 164 260 194 222 259Z' opacity='.68'/%3E%3Cpath d='M210 236 C199 165 199 88 210 27' opacity='.45'/%3E%3Cpath d='M210 236 C184 169 144 116 93 78' opacity='.34'/%3E%3Cpath d='M210 236 C236 169 276 116 327 78' opacity='.34'/%3E%3Cpath d='M187 220 C181 207 175 195 168 184' opacity='.42'/%3E%3Cpath d='M233 220 C239 207 245 195 252 184' opacity='.42'/%3E%3Cpath d='M210 266 C190 320 164 367 112 400' opacity='.42'/%3E%3Cpath d='M211 270 C243 325 283 365 344 385' opacity='.34'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
  filter:drop-shadow(0 0 18px rgba(255,255,255,.16));
  transform:translate3d(0, var(--lily-y, 0px), 0) rotate(var(--lily-rotate, 0deg)) scale(var(--lily-scale, 1));
  transition:opacity .35s ease;
}

.service-card > *,
.quote-wrap > *,
.contact-inner > * {
  position:relative;
  z-index:1;
}

.service-card::after {
  right:-46px;
  top:22px;
  width:250px;
  height:310px;
  opacity:.11;
  --lily-rotate:14deg;
  --lily-scale:.92;
}

.service-card:nth-child(2)::after {
  right:auto;
  left:-52px;
  top:54px;
  opacity:.095;
  --lily-rotate:-18deg;
  --lily-scale:.82;
}

.service-card:nth-child(3)::after {
  right:-70px;
  top:78px;
  opacity:.085;
  --lily-rotate:21deg;
  --lily-scale:.88;
}

.quote-wrap::after {
  left:50%;
  top:50%;
  width:min(780px, 82vw);
  height:560px;
  opacity:.075;
  --lily-scale:1.18;
  --lily-rotate:-7deg;
  transform:translate3d(-50%, calc(-50% + var(--lily-y, 0px)), 0) rotate(var(--lily-rotate)) scale(var(--lily-scale));
}

.contact-inner::after {
  right:-80px;
  bottom:-92px;
  width:430px;
  height:520px;
  opacity:.12;
  --lily-rotate:16deg;
  --lily-scale:.96;
}

.quote-section {
  position:relative;
  background:
    radial-gradient(circle at 50% 45%, rgba(255,255,255,.13), transparent 27%),
    linear-gradient(180deg, #050505, #0a0a0a 48%, #050505);
}

.quote-wrap {
  position:relative;
  border-radius:22px;
  padding:72px 46px;
  background:rgba(255,255,255,.018);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
}

.quote-mark {
  left:7%;
  top:34px;
}

.event {
  position:relative;
  padding:32px 26px;
  margin-top:12px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.035), rgba(255,255,255,.012));
}

.event-list {
  border:0;
}

.event:first-child {
  margin-top:0;
}

.audio-card {
  min-height:250px;
  max-width:560px;
  justify-self:start;
}

.contact-inner {
  position:relative;
  border-radius:26px;
  padding:86px 40px;
  background:
    radial-gradient(circle at 50% 20%, rgba(255,255,255,.12), transparent 34%),
    rgba(255,255,255,.018);
}

.section {
  position:relative;
}

.intro::before,
.ways::before,
.resources::before,
.about-band::before {
  content:"";
  position:absolute;
  left:50%;
  top:0;
  width:min(1180px, calc(100% - 64px));
  height:1px;
  transform:translateX(-50%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent);
}

.hero-content,
.intro-grid,
.ways .container,
.quote-wrap,
.events .container,
.resources-grid,
.about-grid,
.contact-inner {
  animation:softRise .75s ease both;
}

@keyframes softRise {
  from { opacity:0; transform:translateY(18px); }
  to { opacity:1; transform:translateY(0); }
}

@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    animation:none !important;
    transition:none !important;
    scroll-behavior:auto !important;
  }
}

@media (max-width:800px) {
  nav {
    margin-top:0;
    padding:22px;
    gap:14px;
  }

  nav a {
    padding:8px 0;
  }

  .nav-cta {
    padding:11px 14px;
    margin-left:0;
  }

  .hero::before {
    left:18px;
    bottom:120px;
    opacity:.4;
  }

  .quote-wrap,
  .contact-inner {
    padding:54px 24px;
  }

  .event {
    padding:24px 18px;
  }

  .service-card::after {
    width:210px;
    height:260px;
    right:-74px;
    opacity:.09;
  }

  .quote-wrap::after {
    height:410px;
    opacity:.06;
  }

  .contact-inner::after {
    width:300px;
    height:360px;
    right:-120px;
    opacity:.08;
  }
}

.text-link,.service-card a,.event > a {
  width:max-content;
  max-width:100%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  padding:13px 18px;
  border:1px solid rgba(255,255,255,.28);
  border-radius:12px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font-size:12px;
  font-weight:600;
  line-height:1;
  text-decoration:none;
}

.text-link {
  margin-top:24px;
  border-bottom:1px solid rgba(255,255,255,.28);
  padding-bottom:13px;
}

.service-card a {
  align-self:flex-start;
}

.text-link span,.service-card a span,.event > a span {
  margin-left:0;
  font-size:17px;
  line-height:.6;
}

.text-link:hover,.service-card a:hover,.event > a:hover {
  background:rgba(255,255,255,.12);
  transform:translateY(-2px);
}

.audio-card {
  padding:28px;
  border-radius:18px;
}

.audio-card::after {
  content:"";
  position:absolute;
  right:32px;
  bottom:54px;
  width:170px;
  height:34px;
  opacity:.24;
  pointer-events:none;
  background:repeating-linear-gradient(90deg, rgba(255,255,255,.9) 0 2px, transparent 2px 12px);
  mask-image:linear-gradient(90deg, transparent, #000 16%, #000 84%, transparent);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 16%, #000 84%, transparent);
}

.play-button {
  padding-left:0;
  font-size:25px;
  font-family:var(--font-heading-wow);
}

.contact::before,.contact::after {
  content:none !important;
}

.hero-image {
  background-image:url("assets/crina-hero-b.webp");
  background-position:center center;
}

.service-card::after,
.quote-wrap::after,
.contact-inner::after {
  background-image:url("assets/lilies-hyperreal-hero-retouched.png");
  background-repeat:no-repeat;
  background-size:cover;
  mix-blend-mode:normal;
  filter:saturate(1) contrast(1.02) brightness(1.04) drop-shadow(0 0 30px rgba(232,214,198,.14));
}

.service-card::after {
  inset:auto -18px -10px auto;
  width:78%;
  height:72%;
  border-radius:inherit;
  opacity:.18;
  background-position:68% 42%;
  --lily-rotate:0deg;
  --lily-scale:1;
}

.service-card:nth-child(2)::after {
  inset:auto auto -18px -34px;
  width:82%;
  height:76%;
  opacity:.15;
  background-position:42% 48%;
  --lily-rotate:0deg;
  --lily-scale:1;
}

.service-card:nth-child(3)::after {
  inset:-4px -44px auto auto;
  width:84%;
  height:76%;
  opacity:.15;
  background-position:82% 32%;
  --lily-rotate:0deg;
  --lily-scale:1;
}

.quote-wrap::after {
  inset:0;
  width:100%;
  height:100%;
  border-radius:inherit;
  opacity:.17;
  background-size:cover;
  background-position:65% 45%;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.08);
}

.contact-inner::after {
  inset:-12% -6% -18% 42%;
  width:auto;
  height:auto;
  border-radius:inherit;
  opacity:.2;
  background-size:cover;
  background-position:72% 45%;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.06);
}

@media (max-width:800px) {
  .service-card::after {
    width:88%;
    height:70%;
    right:-44px;
    opacity:.13;
  }

  .quote-wrap::after {
    opacity:.12;
  }

  .contact-inner::after {
    inset:18% -42% -18% 18%;
    opacity:.14;
  }
}

.service-card,
.quote-wrap,
.contact-inner {
  overflow:hidden;
}

.service-card::after {
  inset:1px !important;
  width:auto !important;
  height:auto !important;
  border-radius:inherit;
  opacity:.46;
  background-size:185%;
  background-position:72% 56%;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.13);
  -webkit-mask-image:linear-gradient(145deg, transparent 0 20%, rgba(0,0,0,.48) 36%, #000 58%, #000 100%);
  mask-image:linear-gradient(145deg, transparent 0 20%, rgba(0,0,0,.48) 36%, #000 58%, #000 100%);
}

.service-card:nth-child(2)::after {
  inset:1px !important;
  opacity:.42;
  background-size:195%;
  background-position:40% 61%;
  -webkit-mask-image:linear-gradient(215deg, transparent 0 22%, rgba(0,0,0,.48) 38%, #000 62%, #000 100%);
  mask-image:linear-gradient(215deg, transparent 0 22%, rgba(0,0,0,.48) 38%, #000 62%, #000 100%);
}

.service-card:nth-child(3)::after {
  inset:1px !important;
  opacity:.42;
  background-size:190%;
  background-position:82% 42%;
  -webkit-mask-image:linear-gradient(145deg, transparent 0 24%, rgba(0,0,0,.48) 40%, #000 64%, #000 100%);
  mask-image:linear-gradient(145deg, transparent 0 24%, rgba(0,0,0,.48) 40%, #000 64%, #000 100%);
}

.service-card:hover::after {
  opacity:.58;
}

.quote-wrap::after {
  inset:1px !important;
  width:auto !important;
  height:auto !important;
  opacity:.34;
  background-size:108%;
  background-position:68% 45%;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.18);
  -webkit-mask-image:radial-gradient(circle at 64% 48%, #000 0 45%, rgba(0,0,0,.55) 62%, transparent 88%);
  mask-image:radial-gradient(circle at 64% 48%, #000 0 45%, rgba(0,0,0,.55) 62%, transparent 88%);
}

.contact-inner::after {
  inset:1px !important;
  width:auto !important;
  height:auto !important;
  opacity:.38;
  background-size:125%;
  background-position:82% 50%;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.16);
  -webkit-mask-image:linear-gradient(90deg, transparent 0 18%, rgba(0,0,0,.45) 34%, #000 64%, #000 100%);
  mask-image:linear-gradient(90deg, transparent 0 18%, rgba(0,0,0,.45) 34%, #000 64%, #000 100%);
}

@media (max-width:800px) {
  .service-card::after,
  .service-card:nth-child(2)::after,
  .service-card:nth-child(3)::after {
    opacity:.28;
    background-size:215%;
  }

  .quote-wrap::after {
    opacity:.24;
    background-size:145%;
  }

  .contact-inner::after {
    opacity:.25;
    background-size:160%;
  }
}

.intro-grid {
  position:relative;
  min-height:430px;
  overflow:hidden;
}

.intro-grid::after,
.event::after {
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  background-repeat:no-repeat;
  mix-blend-mode:normal;
  filter:saturate(.98) contrast(1.03) brightness(1.04) drop-shadow(0 0 30px rgba(232,214,198,.12));
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(var(--lily-scale, 1));
}

.intro-grid > *,
.event > * {
  position:relative;
  z-index:1;
}

.intro-grid::after {
  top:-8%;
  right:6%;
  width:40%;
  height:118%;
  opacity:.48;
  background-image:url("assets/lily-vertical-cream.webp");
  background-size:contain;
  background-position:center center;
  --lily-scale:1.02;
  -webkit-mask-image:linear-gradient(90deg, transparent 0 2%, rgba(0,0,0,.52) 22%, #000 58%, rgba(0,0,0,.86) 86%, transparent 100%);
  mask-image:linear-gradient(90deg, transparent 0 2%, rgba(0,0,0,.52) 22%, #000 58%, rgba(0,0,0,.86) 86%, transparent 100%);
}

.service-card::after,
.quote-wrap::after,
.contact-inner::after,
.event::after {
  background-repeat:no-repeat;
  mix-blend-mode:normal;
  filter:saturate(.98) contrast(1.03) brightness(1.05) drop-shadow(0 0 28px rgba(232,214,198,.13));
}

.service-card::after {
  background-image:url("assets/lilies-wide-cream.webp");
  opacity:.42;
  background-size:210%;
  background-position:73% 46%;
  filter:saturate(.94) contrast(1.02) brightness(1.03) drop-shadow(0 0 28px rgba(232,214,198,.12));
}

.service-card:nth-child(2)::after {
  background-image:url("assets/lily-vertical-cream.webp");
  opacity:.44;
  background-size:118%;
  background-position:88% 48%;
  -webkit-mask-image:linear-gradient(90deg, transparent 0 22%, rgba(0,0,0,.35) 43%, #000 72%, #000 100%);
  mask-image:linear-gradient(90deg, transparent 0 22%, rgba(0,0,0,.35) 43%, #000 72%, #000 100%);
}

.service-card:nth-child(3)::after {
  background-image:url("assets/lilies-wide-cream.webp");
  opacity:.46;
  background-size:210%;
  background-position:74% 42%;
  -webkit-mask-image:linear-gradient(145deg, transparent 0 20%, rgba(0,0,0,.42) 39%, #000 66%, #000 100%);
  mask-image:linear-gradient(145deg, transparent 0 20%, rgba(0,0,0,.42) 39%, #000 66%, #000 100%);
}

.quote-wrap::after {
  background-image:url("assets/lilies-wide-cream.webp");
  opacity:.38;
  background-size:116%;
  background-position:64% 48%;
}

.contact-inner::after {
  background-image:url("assets/lilies-wide-cream.webp");
  opacity:.36;
  background-size:118%;
  background-position:70% 48%;
  filter:saturate(.94) contrast(1.02) brightness(1.03) drop-shadow(0 0 28px rgba(232,214,198,.12));
}

.event {
  overflow:hidden;
}

.event::after {
  inset:1px;
  border-radius:inherit;
  opacity:.18;
  background-image:url("assets/lily-vertical-cream.webp");
  background-size:68%;
  background-position:92% 46%;
  --lily-scale:1.08;
  -webkit-mask-image:linear-gradient(90deg, transparent 0 42%, rgba(0,0,0,.35) 62%, #000 100%);
  mask-image:linear-gradient(90deg, transparent 0 42%, rgba(0,0,0,.35) 62%, #000 100%);
}

.event:nth-child(2)::after {
  opacity:.2;
  background-image:url("assets/lilies-wide-cream.webp");
  background-size:92%;
  background-position:106% 50%;
}

.audio-card {
  background:
    linear-gradient(180deg, rgba(16,16,16,.86), rgba(16,16,16,.94)),
    url("assets/lilies-wide-cream.webp") 78% 48% / 122% no-repeat;
}

@media (max-width:800px) {
  .intro-grid {
    min-height:520px;
  }

  .intro-grid::after {
    top:27%;
    right:-10%;
    width:74%;
    height:74%;
    opacity:.32;
  }

  .service-card::after,
  .service-card:nth-child(2)::after,
  .service-card:nth-child(3)::after {
    opacity:.32;
    background-size:190%;
  }

  .event::after {
    opacity:.13;
    background-size:116%;
    background-position:120% 50%;
  }
}

.about-grid {
  position:relative;
  min-height:430px;
  overflow:hidden;
}

.about-grid > * {
  position:relative;
  z-index:1;
}

.about-grid::after {
  content:"";
  position:absolute;
  z-index:0;
  pointer-events:none;
  top:7%;
  right:-22%;
  bottom:4%;
  width:min(780px, 68%);
  opacity:.36;
  border-radius:32px;
  background:
    linear-gradient(90deg, rgba(5,5,5,.9) 0%, rgba(5,5,5,.48) 27%, rgba(5,5,5,.04) 68%, rgba(5,5,5,.5) 100%),
    url("assets/lilies-wide-cream.webp") 54% 48% / cover no-repeat;
  filter:saturate(.96) contrast(1.03) brightness(1.04) drop-shadow(0 0 34px rgba(232,214,198,.14));
  transform:translate3d(var(--lily-x, 0px), 0, 0) scale(1.08);
  transform-origin:center;
  transition:opacity .25s ease, filter .25s ease;
  -webkit-mask-image:
    radial-gradient(ellipse at 58% 50%, #000 0 48%, rgba(0,0,0,.72) 66%, transparent 100%),
    linear-gradient(90deg, transparent 0, #000 20%, #000 82%, transparent 100%);
  mask-image:
    radial-gradient(ellipse at 58% 50%, #000 0 48%, rgba(0,0,0,.72) 66%, transparent 100%),
    linear-gradient(90deg, transparent 0, #000 20%, #000 82%, transparent 100%);
}

@media (max-width:800px) {
  .about-grid {
    min-height:540px;
  }

  .about-grid::after {
    top:34%;
    right:-62%;
    bottom:-2%;
    width:130%;
    opacity:.28;
    background:
      linear-gradient(90deg, rgba(5,5,5,.82) 0%, rgba(5,5,5,.36) 35%, rgba(5,5,5,.08) 72%, rgba(5,5,5,.55) 100%),
      url("assets/lilies-wide-cream.webp") 48% 50% / cover no-repeat;
  }
}

.resources-grid > .audio-card {
  width:100%;
  max-width:none;
  justify-self:stretch;
}

.quote-wrap.container,
.about-grid.container,
.contact-inner.container {
  width:min(calc(1180px - var(--logo-content-align)), calc(100% - 64px - var(--logo-content-align)));
  margin-left:max(32px, calc((100% - 1180px) / 2 + var(--logo-content-align)));
  margin-right:auto;
}

.site-header {
  padding-left:var(--logo-content-align);
}

@media (max-width:800px) {
  .quote-wrap.container,
  .about-grid.container,
  .contact-inner.container {
    width:calc(100% - 64px);
    margin-left:calc(21px + var(--logo-content-align));
    margin-right:21px;
  }
}

.brand img,
.footer-brand,
.footer-brand img {
  width:400px;
}

.brand,
.footer-brand {
  margin-left:-88px;
}

.brand img {
  height:150px;
}

.footer-brand,
.footer-brand img {
  height:150px;
}

.site-header {
  min-height:168px;
}

.intro-grid::after {
  top:-14%;
  right:-1%;
  width:49%;
  height:132%;
  opacity:.6;
  --lily-scale:1.1;
}

.about-grid::after {
  top:4%;
  right:-12%;
  bottom:2%;
  width:min(900px, 78%);
  opacity:.56;
  background:
    linear-gradient(90deg, rgba(5,5,5,.78) 0%, rgba(5,5,5,.28) 28%, rgba(5,5,5,.03) 70%, rgba(5,5,5,.26) 100%),
    url("assets/lilies-wide-cream.webp") 50% 50% / cover no-repeat;
  transform:translate3d(var(--lily-x, 0px), 0, 0) scale(1.06);
  transition:opacity .25s ease, filter .25s ease;
  -webkit-mask-image:linear-gradient(90deg, rgba(0,0,0,.55) 0%, #000 16%, #000 88%, rgba(0,0,0,.72) 100%);
  mask-image:linear-gradient(90deg, rgba(0,0,0,.55) 0%, #000 16%, #000 88%, rgba(0,0,0,.72) 100%);
}

@media (max-width:800px) {
  .brand img,
  .footer-brand,
  .footer-brand img {
    width:min(400px, calc(100vw - 86px));
  }

  .brand,
  .footer-brand {
    margin-left:-62px;
  }

  .brand img {
    height:auto;
  }

  .footer-brand img {
    height:auto;
  }

  .footer-brand {
    height:auto;
    min-height:120px;
  }

  .site-header {
    min-height:142px;
  }

  .intro-grid::after {
    top:23%;
    right:-16%;
    width:88%;
    height:82%;
    opacity:.44;
    --lily-scale:1.12;
  }

  .about-grid::after {
    top:28%;
    right:-30%;
    bottom:0;
    width:132%;
    opacity:.52;
    background:
      linear-gradient(90deg, rgba(5,5,5,.72) 0%, rgba(5,5,5,.24) 34%, rgba(5,5,5,.04) 74%, rgba(5,5,5,.28) 100%),
      url("assets/lilies-wide-cream.webp") 48% 50% / cover no-repeat;
  }
}

.testimonials {
  overflow:hidden;
  background:#050505;
  color:#fff;
}

.testimonials .container {
  position:relative;
}

.testimonials-head {
  align-items:center;
}

.carousel-controls {
  display:flex;
  gap:10px;
}

.carousel-button {
  width:48px;
  height:42px;
  border:1px solid rgba(255,255,255,.3);
  border-radius:16px;
  background:rgba(255,255,255,.07);
  color:#fff;
  font:18px var(--font-body-wow);
  cursor:pointer;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.12), 0 18px 50px rgba(0,0,0,.18);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:transform .2s ease, background .2s ease, border-color .2s ease;
}

.carousel-button:hover {
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.5);
  background:rgba(255,255,255,.12);
}

.testimonial-carousel {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(310px, 36%);
  gap:18px;
  margin-left:var(--logo-content-align);
  padding:4px 0 18px;
  overflow-x:auto;
  scroll-snap-type:x mandatory;
  scroll-padding-left:var(--logo-content-align);
  scrollbar-width:none;
}

.testimonial-carousel::-webkit-scrollbar {
  display:none;
}

.testimonial-card {
  position:relative;
  min-height:420px;
  padding:16px;
  display:flex;
  flex-direction:column;
  gap:22px;
  overflow:hidden;
  scroll-snap-align:start;
  border:1px solid rgba(255,255,255,.16);
  border-radius:26px;
  background:linear-gradient(180deg, rgba(255,255,255,.075), rgba(255,255,255,.018));
  box-shadow:inset 0 1px 1px rgba(255,255,255,.1), 0 24px 80px rgba(0,0,0,.18);
}

.testimonial-card::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(5,5,5,.1), rgba(5,5,5,.76)),
    url("assets/lily-vertical-cream.webp") 92% 18% / 68% no-repeat;
  opacity:.18;
}

.video-thumb {
  position:relative;
  min-height:210px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  padding:20px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.18);
  background:
    linear-gradient(145deg, rgba(255,255,255,.14), rgba(255,255,255,.025)),
    url("assets/lilies-wide-cream.webp") 62% 50% / 130% no-repeat;
  box-shadow:inset 0 1px 1px rgba(255,255,255,.1);
}

.video-thumb::after {
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 35% 38%, rgba(255,255,255,.16), transparent 22%), linear-gradient(180deg, transparent 35%, rgba(0,0,0,.58));
  pointer-events:none;
}

.play-mark,
.video-source,
.testimonial-card p,
.testimonial-name {
  position:relative;
  z-index:1;
}

.play-mark {
  width:58px;
  height:58px;
  display:grid;
  place-items:center;
  padding-left:4px;
  border-radius:18px;
  background:rgba(255,255,255,.9);
  color:#050505;
  font-size:18px;
}

.video-source {
  font:10px var(--mono);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.78);
}

.testimonial-card p {
  margin:0;
  font:italic clamp(28px, 2.7vw, 40px)/1.06 var(--font-heading-wow);
  letter-spacing:-.04em;
}

.testimonial-name {
  margin-top:auto;
  font:10px var(--mono);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.58);
}

@media (max-width:800px) {
  .testimonials-head {
    display:grid;
    grid-template-columns:1fr auto;
    gap:18px;
  }

  .testimonial-carousel {
    grid-auto-columns:86%;
    gap:14px;
    margin-left:var(--logo-content-align);
    padding-bottom:10px;
  }

  .testimonial-card {
    min-height:390px;
  }

  .video-thumb {
    min-height:190px;
  }
}

.service-card::after {
  filter:sepia(.2) saturate(1.25) hue-rotate(-8deg) brightness(1.08) contrast(1.04) drop-shadow(0 0 28px rgba(238,198,166,.14));
}

.service-card:nth-child(2)::after {
  filter:sepia(.18) saturate(1.45) hue-rotate(18deg) brightness(1.04) contrast(1.03) drop-shadow(0 0 28px rgba(206,177,130,.14));
}

.service-card:nth-child(3)::after {
  filter:sepia(.12) saturate(1.28) hue-rotate(328deg) brightness(1.06) contrast(1.04) drop-shadow(0 0 28px rgba(214,184,196,.15));
}

.quote-wrap::after {
  filter:sepia(.2) saturate(1.35) hue-rotate(348deg) brightness(1.05) contrast(1.03) drop-shadow(0 0 30px rgba(232,190,190,.13));
}

.intro-grid::after {
  filter:sepia(.22) saturate(1.4) hue-rotate(22deg) brightness(1.08) contrast(1.03) drop-shadow(0 0 30px rgba(227,191,132,.16));
}

.event::after {
  filter:sepia(.18) saturate(1.5) hue-rotate(50deg) brightness(1.03) contrast(1.04) drop-shadow(0 0 26px rgba(164,193,155,.12));
}

.event:nth-child(2)::after {
  filter:sepia(.12) saturate(1.45) hue-rotate(302deg) brightness(1.07) contrast(1.03) drop-shadow(0 0 26px rgba(198,168,218,.14));
}

.audio-card {
  background:
    linear-gradient(180deg, rgba(16,16,16,.84), rgba(16,16,16,.94)),
    linear-gradient(120deg, rgba(122,92,62,.22), rgba(54,67,54,.18)),
    url("assets/lilies-wide-cream.webp") 78% 48% / 122% no-repeat;
}

.about-grid::after {
  filter:sepia(.18) saturate(1.55) hue-rotate(12deg) brightness(1.08) contrast(1.04) drop-shadow(0 0 34px rgba(224,185,145,.16));
}

.contact-inner::after {
  filter:sepia(.16) saturate(1.5) hue-rotate(292deg) brightness(1.05) contrast(1.04) drop-shadow(0 0 30px rgba(190,170,224,.15));
}

.testimonial-card::before {
  opacity:.08;
}

.testimonial-card:nth-child(1) .video-thumb {
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.58)),
    url("assets/testimonial-woman-01.webp") 44% 44% / cover no-repeat;
}

.testimonial-card:nth-child(2) .video-thumb {
  background:
    linear-gradient(180deg, rgba(0,0,0,.04), rgba(0,0,0,.56)),
    url("assets/testimonial-woman-02.webp") 54% 42% / cover no-repeat;
}

.testimonial-card:nth-child(3) .video-thumb {
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.6)),
    url("assets/testimonial-woman-03.webp") 48% 44% / cover no-repeat;
}

.testimonial-card:nth-child(4) .video-thumb {
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.58)),
    url("assets/testimonial-woman-04.webp") 54% 44% / cover no-repeat;
}

.testimonial-card:nth-child(1) {
  background:linear-gradient(180deg, rgba(137,103,76,.16), rgba(255,255,255,.018));
}

.testimonial-card:nth-child(2) {
  background:linear-gradient(180deg, rgba(146,91,87,.15), rgba(255,255,255,.018));
}

.testimonial-card:nth-child(3) {
  background:linear-gradient(180deg, rgba(82,111,77,.13), rgba(255,255,255,.018));
}

.testimonial-card:nth-child(4) {
  background:linear-gradient(180deg, rgba(96,80,135,.17), rgba(255,255,255,.018));
}

.service-card::after,
.event::after,
.quote-wrap::after,
.contact-inner::after {
  inset:-14% !important;
  border-radius:inherit;
  background-repeat:no-repeat;
  transform:translate3d(0, var(--lily-y, 0px), 0) scale(1.04);
}

.service-card::after {
  background-size:150% !important;
  background-position:70% 55% !important;
  -webkit-mask-image:radial-gradient(ellipse at 70% 58%, #000 0 34%, rgba(0,0,0,.76) 50%, rgba(0,0,0,.32) 68%, transparent 86%);
  mask-image:radial-gradient(ellipse at 70% 58%, #000 0 34%, rgba(0,0,0,.76) 50%, rgba(0,0,0,.32) 68%, transparent 86%);
}

.service-card:nth-child(2)::after {
  inset:-18% !important;
  background-size:98% !important;
  background-position:76% 52% !important;
  -webkit-mask-image:radial-gradient(ellipse at 72% 54%, #000 0 38%, rgba(0,0,0,.74) 56%, rgba(0,0,0,.28) 74%, transparent 91%);
  mask-image:radial-gradient(ellipse at 72% 54%, #000 0 38%, rgba(0,0,0,.74) 56%, rgba(0,0,0,.28) 74%, transparent 91%);
}

.service-card:nth-child(3)::after {
  background-size:152% !important;
  background-position:78% 54% !important;
  -webkit-mask-image:radial-gradient(ellipse at 76% 58%, #000 0 35%, rgba(0,0,0,.74) 52%, rgba(0,0,0,.3) 70%, transparent 88%);
  mask-image:radial-gradient(ellipse at 76% 58%, #000 0 35%, rgba(0,0,0,.74) 52%, rgba(0,0,0,.3) 70%, transparent 88%);
}

.quote-wrap::after {
  inset:-10% !important;
  background-size:128% !important;
  -webkit-mask-image:radial-gradient(ellipse at 64% 50%, #000 0 42%, rgba(0,0,0,.68) 60%, rgba(0,0,0,.24) 78%, transparent 92%);
  mask-image:radial-gradient(ellipse at 64% 50%, #000 0 42%, rgba(0,0,0,.68) 60%, rgba(0,0,0,.24) 78%, transparent 92%);
}

.event::after {
  inset:-18% !important;
  background-size:78% !important;
  background-position:95% 50% !important;
  -webkit-mask-image:radial-gradient(ellipse at 82% 52%, #000 0 38%, rgba(0,0,0,.64) 58%, rgba(0,0,0,.24) 76%, transparent 92%);
  mask-image:radial-gradient(ellipse at 82% 52%, #000 0 38%, rgba(0,0,0,.64) 58%, rgba(0,0,0,.24) 76%, transparent 92%);
}

.event:nth-child(2)::after {
  background-size:112% !important;
  background-position:94% 50% !important;
}

.contact-inner::after {
  inset:-12% !important;
  background-size:132% !important;
  -webkit-mask-image:radial-gradient(ellipse at 68% 50%, #000 0 42%, rgba(0,0,0,.66) 60%, rgba(0,0,0,.22) 78%, transparent 92%);
  mask-image:radial-gradient(ellipse at 68% 50%, #000 0 42%, rgba(0,0,0,.66) 60%, rgba(0,0,0,.22) 78%, transparent 92%);
}

.audio-card {
  background:
    radial-gradient(ellipse at 78% 48%, rgba(16,16,16,.1) 0 32%, rgba(16,16,16,.68) 72%, rgba(16,16,16,.94) 100%),
    linear-gradient(180deg, rgba(16,16,16,.84), rgba(16,16,16,.94)),
    linear-gradient(120deg, rgba(122,92,62,.22), rgba(54,67,54,.18)),
    url("assets/lilies-wide-cream.webp") 78% 48% / 150% no-repeat;
}

@media (max-width:800px) {
  .service-card::after,
  .event::after,
  .quote-wrap::after,
  .contact-inner::after {
    inset:-18% !important;
  }

  .service-card::after,
  .service-card:nth-child(2)::after,
  .service-card:nth-child(3)::after {
    background-size:170% !important;
  }
}

.space-section {
  overflow:hidden;
  background:#050505;
  color:#fff;
}

.space-copy {
  display:grid;
  grid-template-columns:1fr minmax(260px, 420px);
  gap:8%;
  align-items:end;
  margin-bottom:44px;
}

.space-copy h2 {
  margin:0;
}

.space-copy p {
  margin:0 0 8px;
  color:rgba(255,255,255,.7);
  line-height:1.62;
}

.space-panorama {
  position:relative;
}

.space-panorama::before,
.space-panorama::after {
  content:"";
  position:absolute;
  top:0;
  bottom:28px;
  z-index:2;
  width:min(16vw, 180px);
  pointer-events:none;
}

.space-panorama::before {
  left:0;
  background:linear-gradient(90deg, #050505, rgba(5,5,5,0));
}

.space-panorama::after {
  right:0;
  background:linear-gradient(270deg, #050505, rgba(5,5,5,0));
}

.space-panorama-track {
  width:100%;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  cursor:grab;
  scrollbar-width:none;
  scroll-snap-type:x proximity;
  user-select:none;
}

.space-panorama-track::-webkit-scrollbar {
  display:none;
}

.space-panorama-track.dragging {
  cursor:grabbing;
}

.space-panorama-track img {
  display:block;
  width:max(1800px, 190vw);
  height:min(58vw, 560px);
  min-height:360px;
  object-fit:cover;
  border-block:1px solid rgba(255,255,255,.16);
  filter:saturate(.88) contrast(1.02) brightness(.94);
  pointer-events:none;
}

.space-hint {
  margin-top:14px;
  font:10px var(--mono);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(255,255,255,.45);
}

@media (max-width:800px) {
  .space-copy {
    grid-template-columns:1fr;
    gap:20px;
    margin-bottom:30px;
  }

  .space-panorama-track img {
    width:2600px;
    height:440px;
    min-height:440px;
  }
}

/* Header/footer logo reset after the 400px experiment. */
.brand,
.footer-brand {
  margin-left:-48px;
}

.brand img,
.footer-brand,
.footer-brand img {
  width:260px;
}

.brand img,
.footer-brand img {
  height:112px;
  object-fit:contain;
}

.footer-brand {
  height:112px;
}

.site-header {
  min-height:118px;
}

nav {
  gap:24px;
}

.nav-cta {
  flex-shrink:0;
  max-width:none;
  white-space:nowrap;
}

@media (max-width:1100px) {
  .brand img,
  .footer-brand,
  .footer-brand img {
    width:220px;
  }

  .brand img,
  .footer-brand img {
    height:98px;
  }

  .footer-brand {
    height:98px;
  }

  nav {
    gap:18px;
  }

  .nav-cta {
    padding:10px 13px;
  }
}

@media (max-width:800px) {
  .brand,
  .footer-brand {
    margin-left:-34px;
  }

  .brand img,
  .footer-brand,
  .footer-brand img {
    width:190px;
  }

  .brand img,
  .footer-brand img {
    height:92px;
  }

  .footer-brand {
    height:92px;
    min-height:0;
  }

  .site-header {
    height:104px;
    min-height:104px;
  }

  nav {
    top:104px;
  }
}

/* 2026-08-03 brief pass: coherent homepage, commercial clarity, same cinematic identity. */
:root {
  --bg:#050505;
  --bg-soft:#0b0b0a;
  --bg-card:#10100f;
  --ivory:#fff8ee;
  --text-soft:rgba(255,248,238,.74);
  --text-muted:rgba(255,248,238,.58);
  --line-soft:rgba(255,248,238,.18);
  --line-strong:rgba(255,248,238,.34);
  --olive:#70745d;
  --warm:#a69076;
}

html {
  scroll-padding-top:118px;
}

body {
  background:var(--bg);
  color:var(--ivory);
  overflow-x:hidden;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible {
  outline:2px solid rgba(255,248,238,.92);
  outline-offset:4px;
}

.container {
  width:min(1180px, calc(100% - 64px));
}

.site-header {
  position:fixed;
  top:0;
  min-height:112px;
  height:112px;
  align-items:center;
  padding-top:0;
  transition:background .35s ease, backdrop-filter .35s ease, border-color .35s ease, min-height .35s ease, height .35s ease;
}

.site-header::before {
  height:160px;
  transition:opacity .35s ease;
}

.site-header.is-sticky {
  background:rgba(0,0,0,.48);
  border-bottom:1px solid rgba(255,255,255,.1);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.site-header.is-sticky::before {
  opacity:.35;
}

.brand,
.footer-brand {
  margin-left:-54px;
}

.brand img,
.footer-brand,
.footer-brand img {
  width:248px;
}

.brand img,
.footer-brand img {
  height:104px;
}

.footer-brand {
  height:104px;
}

nav {
  margin-top:0;
  gap:18px;
  font-size:11px;
  text-transform:none;
}

nav a {
  min-height:44px;
  display:inline-flex;
  align-items:center;
}

.nav-cta,
.mobile-reserve {
  border-radius:14px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.36);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.2);
}

.nav-cta {
  padding:12px 15px;
}

.mobile-reserve {
  display:none;
  padding:10px 13px;
  font-size:12px;
  font-weight:600;
}

.section {
  position:relative;
  overflow:hidden;
  padding:122px 0;
}

.hero {
  min-height:920px;
}

.hero-image {
  background-image:url("assets/crina-hero-b.webp");
  background-position:center center;
  background-size:cover;
  transform:scale(1.04);
}

.hero-shade {
  background:
    radial-gradient(circle at 55% 24%, rgba(255,244,224,.12), transparent 22%),
    linear-gradient(90deg, rgba(0,0,0,.9) 0%, rgba(0,0,0,.56) 32%, rgba(0,0,0,.08) 60%, rgba(0,0,0,.5) 100%),
    linear-gradient(0deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.12) 52%, rgba(0,0,0,.44) 100%);
}

.hero-content {
  padding-bottom:124px;
}

.hero-kicker,
.section-kicker {
  margin:0 0 18px;
  font:10px/1.45 var(--mono);
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,248,238,.72);
}

.hero-copy {
  max-width:560px;
  color:rgba(255,248,238,.82);
  font-size:20px;
}

.hero-actions,
.button-row {
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:center;
}

.hero-note {
  margin:18px 0 0;
  font:10px var(--mono);
  letter-spacing:.08em;
  color:rgba(255,248,238,.7);
  text-transform:uppercase;
}

.button,
.text-link,
.service-card a,
.event > a {
  min-height:44px;
  align-items:center;
}

.button,
.button-light,
.button-dark,
.button-ghost,
.text-link,
.service-card a,
.event > a {
  color:#fff;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.34);
  border-radius:14px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
}

.button,
.text-link,
.service-card a,
.event > a {
  display:inline-flex;
  gap:18px;
  padding:13px 17px;
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.34);
  font-family:var(--font-body-wow);
}

.button:hover,
.text-link:hover,
.service-card a:hover,
.event > a:hover,
.nav-cta:hover,
.mobile-reserve:hover {
  background:rgba(255,255,255,.13);
  border-color:rgba(255,255,255,.5);
  opacity:1;
}

.intro,
.weekly,
.flow,
.ways,
.series,
.manifest,
.events,
.testimonials,
.resources,
.about-band,
.training,
.faq,
.contact,
.booking,
footer {
  background:var(--bg);
  color:var(--ivory);
}

.intro-grid,
.weekly-grid,
.series-grid,
.training-grid,
.faq-grid,
.booking-grid {
  display:grid;
  grid-template-columns:minmax(280px, .92fr) minmax(0, 1.08fr);
  gap:min(8vw, 92px);
  align-items:start;
}

.intro-copy p,
.weekly-copy p,
.series-grid p,
.training-grid > div > p,
.faq-grid p,
.booking-grid > div > p,
.resource-copy > p,
.contact p,
.about-grid p,
.section-head > p {
  color:var(--text-soft);
  font-size:17px;
  line-height:1.68;
}

.weekly::after,
.intro-grid::after,
.about-grid::after,
.contact-inner::after {
  opacity:.42;
}

.weekly-card,
.service-card,
.step-grid article,
.workshop-grid article,
.testimonial-card,
.audio-card,
.accordion details,
.contact-form,
.manifest .quote-wrap {
  background:
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.025)),
    rgba(12,12,11,.88);
  border:1px solid var(--line-soft);
  border-radius:22px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 34px 80px rgba(0,0,0,.18);
}

.weekly-card {
  padding:30px;
  position:relative;
  overflow:hidden;
}

.weekly-card::after {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.7), rgba(0,0,0,.16)),
    url("assets/lily-vertical-cream.webp") 100% 50% / 68% no-repeat;
  opacity:.42;
}

.weekly-card dl {
  position:relative;
  z-index:1;
  margin:0;
}

.weekly-card div {
  padding:15px 0;
  border-bottom:1px solid rgba(255,255,255,.12);
}

.weekly-card div:last-child {
  border-bottom:0;
}

.weekly-card dt,
.event-tag {
  font:10px/1.4 var(--mono);
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--text-muted);
}

.weekly-card dd {
  margin:5px 0 0;
  color:#fff;
  font-size:18px;
}

.difference {
  width:fit-content;
  margin:26px 0;
  padding:16px 20px;
  border-left:1px solid rgba(255,255,255,.5);
  color:#fff !important;
  font-family:var(--font-heading-wow);
  font-style:italic;
  font-size:30px !important;
  line-height:1.1 !important;
}

.step-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.step-grid article {
  min-height:250px;
  padding:26px;
}

.step-grid span,
.card-number {
  display:block;
  margin-bottom:56px;
  font:11px var(--mono);
  letter-spacing:.12em;
  color:var(--text-muted);
}

.step-grid h3,
.service-card h3,
.testimonial-card h3,
.workshop-grid span {
  font-family:var(--font-heading-wow);
  font-style:italic;
  font-weight:300;
  color:#fff;
}

.step-grid p,
.service-card p,
.workshop-grid p,
.testimonial-card p,
.audio-status {
  color:var(--text-soft);
  line-height:1.62;
}

.service-grid {
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:14px;
}

.service-card,
.service-card.featured {
  min-height:430px;
  padding:30px;
  border:1px solid var(--line-soft);
  overflow:hidden;
}

.service-card::after {
  opacity:.58;
  filter:none;
}

.service-card h3 {
  margin-top:58px;
  font-size:38px;
}

.service-card p {
  max-width:300px;
  font-size:16px;
}

.service-card a {
  margin-top:auto;
  width:max-content;
}

.series-grid {
  margin-bottom:42px;
}

.theme-list {
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  align-content:start;
}

.theme-list span {
  padding:11px 13px;
  border:1px solid var(--line-soft);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:var(--text-soft);
}

.workshop-grid {
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}

.workshop-grid article {
  padding:24px;
}

.workshop-grid span {
  display:block;
  margin-bottom:16px;
  font-size:30px;
  line-height:1;
}

.manifest {
  padding-block:150px;
}

.manifest .quote-wrap {
  position:relative;
  overflow:hidden;
  min-height:520px;
  display:grid;
  place-items:center;
  padding:70px 40px;
}

.manifest .quote-wrap::after {
  opacity:.72;
}

.manifest blockquote {
  max-width:920px;
  color:#fff;
}

.manifest .quote-wrap > p {
  position:relative;
  z-index:1;
  max-width:560px;
  margin:24px auto 0;
  color:var(--text-soft);
  text-align:center;
}

.events .section-head > p {
  margin-left:auto;
}

.event-list {
  border-top:1px solid var(--line-soft);
}

.event {
  grid-template-columns:120px 1fr auto;
  border-bottom:1px solid var(--line-soft);
}

.event time strong {
  min-width:54px;
  font-size:48px;
}

.event h3 {
  font-size:34px;
}

.muted-event {
  opacity:.78;
}

.testimonial-carousel {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(290px, 32%);
  gap:16px;
  overflow-x:auto;
  scroll-snap-type:x proximity;
  scrollbar-width:none;
}

.testimonial-carousel::-webkit-scrollbar {
  display:none;
}

.testimonial-card {
  padding:14px;
  scroll-snap-align:start;
}

.video-thumb {
  position:relative;
  min-height:310px;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  padding:18px;
  overflow:hidden;
  border-radius:16px;
  color:#fff;
  background:
    linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.78)),
    url("assets/testimonial-woman-01.webp") center/cover no-repeat;
}

.testimonial-card:nth-child(2) .video-thumb { background-image:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.78)), url("assets/testimonial-woman-02.webp"); }
.testimonial-card:nth-child(3) .video-thumb { background-image:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.78)), url("assets/testimonial-woman-03.webp"); }
.testimonial-card:nth-child(4) .video-thumb { background-image:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.78)), url("assets/testimonial-woman-04.webp"); }
.testimonial-card:nth-child(5) .video-thumb { background-image:linear-gradient(180deg, rgba(0,0,0,.08), rgba(0,0,0,.78)), url("assets/testimonial-woman-02.webp"); }

.soon-mark,
.video-source {
  position:relative;
  z-index:1;
  font:10px var(--mono);
  letter-spacing:.12em;
  text-transform:uppercase;
}

.soon-mark {
  padding:9px 11px;
  border:1px solid rgba(255,255,255,.36);
  border-radius:999px;
  background:rgba(0,0,0,.28);
}

.testimonial-card h3 {
  margin:18px 4px 6px;
  font-size:30px;
}

.carousel-controls {
  display:flex;
  gap:10px;
}

.carousel-button {
  width:44px;
  height:44px;
  border:1px solid var(--line-soft);
  border-radius:14px;
  background:rgba(255,255,255,.06);
  color:#fff;
  cursor:pointer;
}

.audio-card {
  min-height:360px;
  padding:28px;
  color:#fff;
  background:
    linear-gradient(180deg, rgba(0,0,0,.28), rgba(0,0,0,.72)),
    url("assets/lilies-wide-cream.webp") 74% 50% / 130% no-repeat;
}

.audio-card .play-button:disabled {
  cursor:not-allowed;
  opacity:.78;
}

.audio-status {
  margin:-28px 0 22px;
  font-size:14px;
}

.about-grid {
  min-height:650px;
  display:grid;
  grid-template-columns:minmax(0, .82fr) minmax(280px, .7fr);
}

.about-grid::after {
  background:
    radial-gradient(circle at 55% 45%, rgba(255,255,255,.08), transparent 28%),
    linear-gradient(90deg, rgba(5,5,5,.04), rgba(5,5,5,.7)),
    url("assets/lilies-cluster-cream.webp") 100% 52% / 70% no-repeat;
}

.about-grid > div {
  max-width:720px;
}

.training-grid,
.faq-grid,
.booking-grid {
  align-items:start;
}

.accordion {
  display:grid;
  gap:12px;
}

.accordion details {
  padding:0;
  overflow:hidden;
}

.accordion summary {
  min-height:60px;
  padding:18px 22px;
  cursor:pointer;
  font-weight:600;
  list-style:none;
}

.accordion summary::-webkit-details-marker {
  display:none;
}

.accordion summary::after {
  content:"+";
  float:right;
  color:var(--text-muted);
}

.accordion details[open] summary::after {
  content:"–";
}

.accordion details p {
  margin:0;
  padding:0 22px 20px;
}

.contact {
  padding-block:130px;
}

.contact::before,
.contact::after {
  content:none;
}

.contact-inner {
  max-width:880px;
  min-height:380px;
  display:grid;
  place-items:center;
  padding:70px 34px;
  border:1px solid var(--line-soft);
  border-radius:28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.025)),
    rgba(10,10,9,.9);
}

.contact-actions {
  justify-content:center;
}

.booking {
  border-top:1px solid rgba(255,255,255,.08);
}

.contact-form {
  display:grid;
  gap:14px;
  padding:28px;
}

.contact-form label {
  display:grid;
  gap:8px;
  color:var(--text-soft);
  font-size:14px;
}

.contact-form input,
.contact-form select,
.contact-form textarea {
  width:100%;
  min-height:46px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:12px;
  padding:11px 12px;
  background:rgba(0,0,0,.28);
  color:#fff;
  font:16px var(--font-body-wow);
}

.contact-form textarea {
  resize:vertical;
}

.consent {
  grid-template-columns:22px 1fr;
  align-items:start;
}

.consent input {
  width:18px;
  min-height:18px;
  margin-top:2px;
}

.form-status {
  margin:0;
  color:var(--text-soft);
  line-height:1.5;
}

footer {
  padding:72px 0 34px;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-grid {
  grid-template-columns:260px minmax(260px, 1fr) 180px 240px;
  gap:34px;
}

footer h2 {
  margin:0 0 12px;
  font-size:38px;
}

.footer-nav,
.footer-links {
  display:grid;
  gap:10px;
  font-size:13px;
}

.footer-links {
  color:var(--text-soft);
}

footer small {
  grid-column:1 / -1;
}

@media (max-width:1180px) {
  nav {
    gap:12px;
    font-size:10px;
  }

  .brand,
  .footer-brand {
    margin-left:-36px;
  }

  .brand img,
  .footer-brand,
  .footer-brand img {
    width:220px;
  }

  .brand img,
  .footer-brand img,
  .footer-brand {
    height:92px;
  }
}

@media (max-width:920px) {
  .site-header {
    width:calc(100% - 38px);
    min-height:98px;
    height:98px;
  }

  .site-header::before {
    height:138px;
  }

  .brand,
  .footer-brand {
    margin-left:-20px;
  }

  .brand img,
  .footer-brand,
  .footer-brand img {
    width:168px;
  }

  .brand img,
  .footer-brand img,
  .footer-brand {
    height:74px;
  }

  .mobile-reserve {
    display:inline-flex;
    margin-left:auto;
    margin-right:12px;
  }

  .menu-toggle {
    display:grid;
    gap:6px;
    min-width:44px;
    min-height:44px;
    place-content:center;
    padding:0;
    border:1px solid rgba(255,255,255,.24);
    border-radius:14px;
    background:rgba(255,255,255,.06);
    cursor:pointer;
  }

  .menu-toggle span {
    display:block;
    width:22px;
    height:1px;
    background:#fff;
  }

  nav {
    position:absolute;
    top:98px;
    left:0;
    right:0;
    width:100%;
    display:none !important;
    grid-template-columns:1fr;
    align-items:stretch;
    gap:4px;
    padding:18px;
    background:rgba(0,0,0,.92);
    border:1px solid rgba(255,255,255,.16);
    border-radius:22px;
    backdrop-filter:blur(18px);
    -webkit-backdrop-filter:blur(18px);
  }

  nav.open {
    display:grid !important;
  }

  nav a,
  .nav-cta {
    width:100%;
    justify-content:space-between;
    padding:12px 10px;
  }

  .intro-grid,
  .weekly-grid,
  .series-grid,
  .training-grid,
  .faq-grid,
  .booking-grid,
  .about-grid,
  .resources-grid {
    grid-template-columns:1fr;
    gap:32px;
  }

  .step-grid,
  .service-grid,
  .workshop-grid {
    grid-template-columns:1fr;
  }

  .testimonial-carousel {
    grid-auto-columns:minmax(280px, 86%);
  }

  .footer-grid {
    grid-template-columns:1fr 1fr;
  }

  .hero-copy,
  .hero-note,
  .hero-kicker,
  .intro-copy,
  .intro-copy p,
  .weekly-copy,
  .series-grid p,
  .about-grid p {
    max-width:100%;
    white-space:normal;
  }

  h1 {
    font-size:clamp(62px, 16vw, 92px);
    max-width:100%;
  }

  h2 {
    font-size:clamp(38px, 10vw, 58px);
  }

  .intro h2 {
    font-size:clamp(36px, 9vw, 48px);
  }

  .button,
  .text-link,
  .service-card a,
  .event > a {
    max-width:100%;
  }
}

@media (max-width:640px) {
  html,
  body {
    max-width:100%;
    overflow-x:hidden;
  }

  html {
    scroll-padding-top:98px;
  }

  .container {
    width:min(100% - 38px, 1180px);
  }

  .site-header {
    min-height:96px;
    height:96px;
  }

  .site-header::before {
    height:132px;
  }

  .brand,
  .footer-brand {
    margin-left:-20px;
  }

  .brand img,
  .footer-brand,
  .footer-brand img {
    width:158px;
  }

  .brand img,
  .footer-brand img,
  .footer-brand {
    height:70px;
  }

  nav {
    top:96px;
  }

  .mobile-reserve {
    padding:9px 10px;
  }

  .hero {
    min-height:780px;
  }

  .hero-image {
    background-position:56% center;
    transform:scale(1.02);
  }

  .hero-shade {
    background:
      linear-gradient(90deg, rgba(0,0,0,.78), rgba(0,0,0,.16) 70%),
      linear-gradient(0deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.38) 44%, rgba(0,0,0,.3) 100%);
  }

  .hero-content {
    padding-bottom:70px;
    max-width:100%;
  }

  .hero-copy,
  .hero-note,
  .intro-copy,
  .intro-copy p,
  .weekly-copy,
  .series-grid p,
  .about-grid p {
    max-width:100%;
  }

  .hero-note,
  .hero-kicker {
    white-space:normal;
  }

  h1 {
    font-size:clamp(62px, 20vw, 92px);
    max-width:100%;
  }

  h2 {
    font-size:clamp(38px, 12vw, 52px);
    overflow-wrap:normal;
  }

  .intro h2 {
    font-size:clamp(36px, 11vw, 48px);
  }

  .intro-grid,
  .weekly-grid,
  .series-grid,
  .training-grid,
  .faq-grid,
  .booking-grid,
  .about-grid,
  .resources-grid {
    min-width:0;
  }

  .hero-copy,
  .hero-note,
  .hero-kicker {
    max-width:100%;
    white-space:normal;
  }

  h1 {
    font-size:clamp(62px, 16vw, 92px);
    max-width:100%;
  }

  h2 {
    font-size:clamp(38px, 10vw, 58px);
  }

  .button,
  .text-link,
  .service-card a,
  .event > a {
    max-width:100%;
  }

  .section {
    padding:82px 0;
  }

  .hero-actions,
  .button-row {
    align-items:stretch;
  }

  .button,
  .text-link,
  .service-card a,
  .event > a,
  .contact-actions a,
  .contact-form button {
    max-width:100%;
    width:100%;
    justify-content:space-between;
  }

  .event {
    grid-template-columns:1fr;
    gap:16px;
  }

  .event > a {
    grid-column:auto;
  }

  .manifest .quote-wrap {
    min-height:470px;
    padding:54px 22px;
  }

  .footer-grid {
    grid-template-columns:1fr;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior:auto !important;
    transition-duration:.001ms !important;
    animation-duration:.001ms !important;
  }

  .hero-image {
    transform:none !important;
  }
}

.page-hero {
  min-height:620px;
  display:grid;
  align-items:end;
  padding-top:190px;
  border-bottom:1px solid rgba(255,255,255,.1);
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 18%, rgba(255,255,255,.1), transparent 28%),
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 60%);
}

.page-hero::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:var(--page-hero-image, none) center / cover no-repeat;
  opacity:.86;
  filter:saturate(.9) contrast(1.04) brightness(.86);
  transform:scale(1.02);
}

.page-hero::after {
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.72) 36%, rgba(0,0,0,.22) 70%, rgba(0,0,0,.42) 100%),
    linear-gradient(0deg, rgba(0,0,0,.78) 0%, rgba(0,0,0,.14) 54%, rgba(0,0,0,.5) 100%);
}

.page-sesiuni { --page-hero-image:url("assets/hero-sesiuni-people.webp"); }
.page-ateliere { --page-hero-image:url("assets/hero-ateliere-people.webp"); }
.page-despre { --page-hero-image:url("assets/hero-despre-crina-studio.webp"); }
.page-resurse { --page-hero-image:url("assets/hero-resurse-audio.webp"); }

.page-hero-grid {
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(280px, .95fr) minmax(0, .85fr);
  gap:min(8vw, 92px);
  align-items:end;
}

.page-hero h1 {
  font-size:clamp(62px, 7.4vw, 118px);
}

.page-hero p:not(.section-kicker) {
  color:var(--text-soft);
  font-size:19px;
  line-height:1.65;
}

.page-hero .button {
  margin-top:14px;
}

@media (max-width:920px) {
  .page-hero {
    min-height:560px;
    padding-top:150px;
  }

  .page-hero-grid {
    grid-template-columns:1fr;
    gap:28px;
  }
}

@media (max-width:640px) {
  .page-hero {
    min-height:520px;
    padding-top:128px;
  }

  .page-hero::before {
    background-position:62% center;
  }

  .page-hero h1 {
    font-size:clamp(54px, 15vw, 82px);
  }
}

/* Site logo: the lily icon itself, clean and transparent. */
.brand.site-logo,
.footer-brand.site-logo {
  display:block;
  width:148px;
  height:148px;
  margin-left:-26px;
  flex:0 0 auto;
  overflow:visible;
}

.brand.site-logo img,
.footer-brand.site-logo img {
  display:block;
  width:148px;
  height:148px;
  max-width:none;
  object-fit:contain;
  opacity:1;
  mix-blend-mode:normal;
  transform-origin:50% 44%;
  filter:
    drop-shadow(0 0 12px rgba(255,255,255,.28))
    drop-shadow(0 0 24px rgba(255,255,255,.14));
  transition:transform .35s ease, filter .35s ease, opacity .35s ease;
}

.brand.site-logo:hover img,
.brand.site-logo:focus-visible img,
.footer-brand.site-logo:hover img,
.footer-brand.site-logo:focus-visible img {
  transform:scale(1.045);
  filter:
    drop-shadow(0 0 16px rgba(255,255,255,.48))
    drop-shadow(0 0 34px rgba(255,255,255,.22));
}

.site-header .brand.site-logo {
  align-self:center;
}

footer .footer-brand.site-logo {
  align-self:start;
}

@media (max-width:1180px) {
  .brand.site-logo,
  .footer-brand.site-logo {
    width:128px;
    height:128px;
    margin-left:-20px;
  }

  .brand.site-logo img,
  .footer-brand.site-logo img {
    width:128px;
    height:128px;
  }
}

@media (max-width:920px) {
  .brand.site-logo,
  .footer-brand.site-logo {
    width:104px;
    height:104px;
    margin-left:-14px;
  }

  .brand.site-logo img,
  .footer-brand.site-logo img {
    width:104px;
    height:104px;
  }
}

@media (max-width:640px) {
  .brand.site-logo,
  .footer-brand.site-logo {
    width:88px;
    height:88px;
    margin-left:-10px;
  }

  .brand.site-logo img,
  .footer-brand.site-logo img {
    width:88px;
    height:88px;
  }
}
