
:root {
  --ink: #0b0b0b;
  --paper: #f4efe6;
  --cream: #e7decf;
  --gold: #b79a63;
  --muted: #9d978c;
  --line: rgba(244,239,230,.16);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
section[id] {scroll-margin-top:138px;}
body {
  margin: 0;
  font-family: "DM Sans", sans-serif;
  background: var(--ink);
  color: var(--paper);
  overflow-x: hidden;
}
body::selection { background: var(--gold); color: var(--ink); }
.topline { height:32px; padding:0 4.5vw; display:flex; justify-content:center; align-items:center; gap:22px; background:var(--gold); color:#0b0b0b; font-size:8px; font-weight:600; letter-spacing:.2em; position:absolute; top:0; width:100%; z-index:12; }
.topline a { border-bottom:1px solid rgba(0,0,0,.45); padding-bottom:2px; }
.noise {
  position: fixed; inset: 0; pointer-events: none; opacity: .055; z-index: 20;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 120 120' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}
a { color: inherit; text-decoration: none; }
.nav {
  height: 88px; display: flex; align-items: center; justify-content: space-between;
  padding: 0 4.5vw; border-bottom: 1px solid var(--line); position: absolute; top:32px; z-index: 10; width: 100%;
}
.brand { display:flex; align-items:center; gap:13px; }
.brand-mark {
  width: 38px; height:38px; border:1px solid rgba(244,239,230,.45); border-radius:50%;
  display:grid; place-items:center; font-family:"Playfair Display"; font-size:13px; letter-spacing:.04em;
}
.brand-copy { display:flex; flex-direction:column; line-height:1.15; }
.brand-copy strong { font-size:12px; letter-spacing:.18em; font-weight:600; }
.brand-copy small { margin-top:4px; font-size:8px; letter-spacing:.28em; color:var(--muted); }
.nav nav { display:flex; gap:32px; }
.nav nav a { font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#d5cfc5; }
.nav nav a:hover { color:white; }
.nav.scrolled { position:fixed; top:0; background:rgba(9,9,9,.94); backdrop-filter:blur(18px); animation:navIn .28s ease both; }
@keyframes navIn { from { transform:translateY(-100%); } to { transform:translateY(0); } }
.btn {
  display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:0 26px;
  border:1px solid var(--paper); background:var(--paper); color:var(--ink);
  font-size:11px; letter-spacing:.13em; text-transform:uppercase; font-weight:600;
  transition:.25s ease; cursor:pointer;
}
.btn:hover { background:transparent; color:var(--paper); }
.btn-small { min-height:40px; padding:0 18px; }
.hero {
  min-height: 100vh; padding: 182px 4.5vw 70px; position:relative; display:grid;
  grid-template-columns:1.08fr .92fr; align-items:center; gap:4vw; overflow:hidden;
}
.hero-bg {
  position:absolute; inset:0; z-index:-3;
  background:
    radial-gradient(circle at 77% 43%, rgba(183,154,99,.20), transparent 27%),
    radial-gradient(circle at 10% 92%, rgba(117,95,68,.12), transparent 30%),
    linear-gradient(115deg,#0a0a0a 0%, #0f0e0d 54%, #16130f 100%);
}
.hero-orbit { position:absolute; border:1px solid rgba(183,154,99,.16); border-radius:50%; z-index:-2; }
.orbit-one { width:650px; height:650px; right:-130px; top:90px; }
.orbit-two { width:470px; height:470px; right:-40px; top:180px; }
.eyebrow,.kicker {
  font-size:10px; letter-spacing:.25em; color:var(--gold); font-weight:600; margin-bottom:24px;
}
.hero h1,.statement h2,.services h2,.packages h2,.repertoire h2,.about h2,.booking h2 {
  font-family:"Playfair Display", serif; font-weight:500; letter-spacing:-.035em; margin:0;
}
.hero h1 { font-size:clamp(54px,6.4vw,104px); line-height:.94; max-width:850px; }
em { color:var(--gold); font-weight:500; }
.hero-copy { font-size:16px; line-height:1.8; color:#c5beb2; max-width:620px; margin:32px 0; font-weight:300; }
.hero-actions { display:flex; align-items:center; gap:28px; }
.text-link { font-size:11px; letter-spacing:.12em; text-transform:uppercase; border-bottom:1px solid #5f584e; padding-bottom:8px; }
.hero-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:70px; max-width:760px; }
.hero-proof div { border-top:1px solid var(--line); padding-top:15px; }
.hero-proof strong { display:block; font-size:11px; letter-spacing:.1em; text-transform:uppercase; margin-bottom:6px; }
.hero-proof span { color:#8f897f; font-size:11px; line-height:1.45; }
.hero-visual { display:flex; justify-content:center; }
.portrait-card {
  width:min(470px, 94%); aspect-ratio:.72; position:relative;
  border:1px solid rgba(244,239,230,.22); padding:12px;
}
.portrait-placeholder {
  width:100%; height:100%; position:relative; overflow:hidden; display:grid; place-items:center;
  background:#17130f;
}
.portrait-placeholder img { width:100%; height:100%; object-fit:cover; object-position:center; display:block; filter:saturate(.78) contrast(1.03); }
.image-shade { position:absolute; inset:0; background:linear-gradient(180deg,transparent 55%,rgba(5,5,5,.74) 100%); }
.portrait-caption { position:absolute; z-index:3; left:24px; right:24px; bottom:22px; display:flex; justify-content:space-between; align-items:end; gap:18px; }
.portrait-caption span { font-size:9px; letter-spacing:.2em; color:#f3eadb; }
.portrait-caption small { max-width:190px; color:#c4b9aa; font-size:9px; line-height:1.45; text-align:right; }
.floating-tag {
  position:absolute; right:-26px; top:60px; background:var(--paper); color:var(--ink);
  padding:13px 18px; font-size:9px; letter-spacing:.13em; text-transform:uppercase; transform:rotate(90deg) translateX(100%);
  transform-origin:top right;
}
.scroll { position:absolute; bottom:25px; right:4.5vw; font-size:8px; letter-spacing:.2em; color:#777167; }
.trust-ribbon { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:22px; padding:21px 5vw; background:#11100f; border-top:1px solid var(--line); border-bottom:1px solid var(--line); color:#aea69a; font-size:8px; letter-spacing:.18em; }
.trust-ribbon i { width:3px; height:3px; background:var(--gold); border-radius:50%; }

.statement {
  display:grid; grid-template-columns:80px 1fr 1fr; gap:4vw; align-items:end;
  padding:120px 7vw; background:var(--paper); color:var(--ink);
}
.section-number { font-family:"Playfair Display"; color:#9a8a72; font-size:18px; align-self:start; }
.statement h2,.services h2,.packages h2,.repertoire h2,.about h2,.booking h2 { font-size:clamp(42px,5vw,75px); line-height:1.02; }
.statement-copy { line-height:1.8; color:#5a554d; font-size:14px; max-width:520px; margin:0; }

.occasions { display:grid; grid-template-columns:repeat(3,1fr); background:#0e0e0e; }
.occasion { min-height:610px; border-right:1px solid var(--line); display:flex; flex-direction:column; }
.occasion:last-child { border-right:0; }
.occasion-art { flex:1; position:relative; overflow:hidden; display:flex; align-items:flex-start; justify-content:flex-end; padding:24px; background:#181512; }
.occasion-art::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.45)); }
.occasion-art img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.78) contrast(1.04); transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.occasion:nth-child(2) .occasion-art img { object-position:36% center; }
.occasion:hover .occasion-art img { transform:scale(1.035); }
.occasion-art span { position:relative; z-index:2; font-family:"Playfair Display"; font-style:italic; color:rgba(255,255,255,.72); }
.art-wedding { background:radial-gradient(circle at 30% 30%, #99846d 0 12%, transparent 34%), linear-gradient(140deg,#5f5346,#171411 68%); }
.art-corporate { background:linear-gradient(155deg,#2b2925,#0c0d0e 70%); }
.art-corporate::before { content:""; position:absolute; width:44%; height:70%; right:15%; bottom:-15%; background:linear-gradient(180deg,#6e6250,#151515); transform:skew(-7deg); }
.art-yacht { background:linear-gradient(180deg,#292b2d 0 47%,#a4875c 48% 49%,#111 50%); }
.art-yacht::before { content:""; position:absolute; width:70%; height:14%; border-radius:50% 15% 60% 10%; background:#e7e1d7; bottom:27%; left:16%; transform:skewX(-17deg); }
.occasion-copy { padding:32px 34px 42px; min-height:230px; }
.occasion-copy>span { color:var(--gold); font-size:9px; letter-spacing:.2em; }
.occasion-copy h3 { font-family:"Playfair Display"; font-size:29px; font-weight:500; margin:15px 0 12px; }
.occasion-copy p { color:#8f8a82; line-height:1.65; font-size:13px; margin:0; }

.services { padding:130px 7vw; background:#151412; }
.services-header { display:grid; grid-template-columns:1.2fr .8fr; gap:9vw; align-items:end; margin-bottom:70px; }
.services-header>p { color:#9c958b; font-size:14px; line-height:1.8; }
.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-item { padding:40px 32px 48px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); min-height:220px; transition:.25s; }
.service-item:hover { background:#1b1916; }
.service-item>span { color:var(--gold); font-size:9px; letter-spacing:.18em; }
.service-item h4 { font-family:"Playfair Display"; font-size:24px; font-weight:500; margin:40px 0 9px; }
.service-item p { color:#807a72; font-size:12px; line-height:1.6; }
.process { display:grid; grid-template-columns:.85fr 1.15fr; gap:8vw; padding:120px 7vw; background:#0d0c0b; }
.process h2,.included h2,.faq h2 { font-family:"Playfair Display",serif; font-weight:500; letter-spacing:-.035em; font-size:clamp(42px,5vw,75px); line-height:1.02; margin:0; }
.process-steps { border-top:1px solid var(--line); }
.process-steps article { display:grid; grid-template-columns:42px 190px 1fr; gap:22px; padding:28px 0; border-bottom:1px solid var(--line); align-items:start; }
.process-steps span,.included-grid b { color:var(--gold); font-size:9px; letter-spacing:.16em; }
.process-steps h3,.included-grid h3 { font-family:"Playfair Display"; font-size:22px; font-weight:500; margin:0; }
.process-steps p,.included-grid p { color:#8f897f; font-size:12px; line-height:1.65; margin:0; }

.packages { padding:130px 7vw; background:var(--paper); color:var(--ink); }
.packages-heading { text-align:center; margin-bottom:70px; }
.package-grid { display:grid; grid-template-columns:repeat(3,1fr); align-items:stretch; }
.package-card { border:1px solid #cfc5b6; padding:42px 34px; min-height:580px; position:relative; display:flex; flex-direction:column; }
.package-card + .package-card { border-left:0; }
.package-card.signature { background:#111; color:var(--paper); transform:translateY(-16px); min-height:612px; padding-top:58px; border-color:#111; box-shadow:0 22px 42px rgba(0,0,0,.12); }
.signature-badge { position:absolute; top:0; left:0; right:0; height:28px; background:var(--gold); color:#111; display:grid; place-items:center; font-size:8px; letter-spacing:.2em; font-weight:600; }
.package-label { color:#9a8462; font-size:9px; letter-spacing:.2em; }
.package-top { height:190px; flex:0 0 190px; }
.package-card h3 { min-height:82px; font-family:"Playfair Display"; font-weight:500; font-size:34px; margin:18px 0 12px; }
.package-top p { min-height:62px; margin:0; font-size:13px; color:#6f685f; line-height:1.6; }
.signature .package-top p { color:#948d83; }
.price { display:flex; height:136px; flex:0 0 136px; flex-direction:column; justify-content:center; padding:0; border-top:1px solid #d4c9ba; border-bottom:1px solid #d4c9ba; margin:22px 0; }
.signature .price { border-color:#34322e; }
.price small { display:block; font-size:8px; letter-spacing:.18em; color:#8f8372; margin-bottom:7px; }
.price strong { font-family:"Playfair Display"; font-size:42px; font-weight:500; }
.package-card ul { list-style:none; padding:0; margin:0 0 30px; }
.package-card li { padding:11px 0; border-bottom:1px solid rgba(100,90,75,.14); font-size:12px; color:#625d56; }
.signature li { color:#b0a99f; border-color:#292825; }
.package-card>a { margin-top:auto; font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
@media (min-width:981px) and (max-width:1180px) {
  .package-card { padding-left:28px; padding-right:28px; }
  .package-card.signature { padding-top:58px; }
  .package-card:last-child h3 { font-size:27px; white-space:nowrap; }
}
.wedding-strip { margin-top:70px; border-top:1px solid #c9bdad; border-bottom:1px solid #c9bdad; display:flex; align-items:center; gap:35px; padding:26px 0; }
.wedding-strip div:not(.divider) { display:flex; gap:18px; align-items:center; }
.wedding-strip span { font-size:9px; letter-spacing:.15em; }
.wedding-strip strong { font-family:"Playfair Display"; font-size:24px; font-weight:500; }
.wedding-strip .divider { width:1px; height:34px; background:#c9bdad; }
.wedding-strip a { margin-left:auto; font-size:10px; letter-spacing:.15em; }
.pricing-note { margin:18px 0 0; color:#7b7369; text-align:right; font-size:10px; }

.repertoire { display:grid; grid-template-columns:1fr 1fr; min-height:720px; background:#0b0b0b; }
.repertoire-visual { position:relative; overflow:hidden; display:grid; place-items:center; background:radial-gradient(circle at center,#29241d 0%,#100f0d 55%,#0b0b0b 76%); }
.vinyl-ring { position:absolute; border-radius:50%; border:1px solid rgba(183,154,99,.2); }
.ring-a { width:620px; height:620px; }
.ring-b { width:450px; height:450px; }
.ring-c { width:240px; height:240px; background:rgba(183,154,99,.05); }
.sound-stage {position:relative;z-index:2;display:flex;min-width:360px;flex-direction:column;align-items:center;justify-content:center;}
.note {font-family:"Playfair Display";font-size:78px;line-height:1;color:var(--gold);text-shadow:0 0 32px rgba(183,154,99,.2);transform:translateY(12px);}
.waveform {position:relative;display:flex;width:min(78%,520px);height:48px;margin-top:2px;align-items:center;justify-content:center;gap:6px;opacity:.38;}
.waveform i {display:block;width:2px;height:46%;border-radius:2px;background:linear-gradient(180deg,transparent,var(--gold),transparent);transform:scaleY(.28);transform-origin:center;}
.waveform i:nth-child(3n+1){height:78%;}.waveform i:nth-child(4n+2){height:100%;}.waveform i:nth-child(5n){height:60%;}
.waveform.is-playing {opacity:.9;}
.waveform.is-playing i {animation:repertoire-wave .78s ease-in-out infinite alternate;}
.waveform.is-playing i:nth-child(2n){animation-duration:.54s;animation-delay:-.2s;}.waveform.is-playing i:nth-child(3n){animation-duration:.92s;animation-delay:-.4s;}.waveform.is-playing i:nth-child(5n){animation-duration:.66s;}
@keyframes repertoire-wave {from{transform:scaleY(.18);opacity:.45;}to{transform:scaleY(1);opacity:1;}}
.repertoire-visual.is-playing .ring-a {animation:repertoire-ring 2.4s ease-in-out infinite;}
.repertoire-visual.is-playing .ring-b {animation:repertoire-ring 1.8s ease-in-out -.45s infinite reverse;}
.repertoire-visual.is-playing .ring-c {animation:repertoire-ring 1.25s ease-in-out -.2s infinite;}
@keyframes repertoire-ring {0%,100%{transform:scale(1);border-color:rgba(183,154,99,.2);box-shadow:0 0 0 rgba(183,154,99,0)}50%{transform:scale(1.035);border-color:rgba(183,154,99,.62);box-shadow:0 0 42px rgba(183,154,99,.12)}}
@media (prefers-reduced-motion:reduce){.waveform.is-playing i{animation:none;transform:scaleY(.55);}.repertoire-visual.is-playing .vinyl-ring{animation:none;border-color:rgba(183,154,99,.5)}}
.audio-controls {display:flex;gap:10px;margin-top:16px;}
.audio-controls button {min-width:92px;border:1px solid rgba(183,154,99,.42);border-radius:999px;padding:11px 15px;background:rgba(10,10,10,.6);color:#d7c9b1;font:500 10px "DM Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:.25s ease;}
.audio-controls button:hover,.audio-controls button:focus-visible {border-color:var(--gold);background:rgba(183,154,99,.12);color:#fff;outline:none;transform:translateY(-1px);}
.audio-controls button span {margin-right:6px;color:var(--gold);}
.sample-now {margin:18px 0 0;color:#928d84;font-size:11px;letter-spacing:.08em;text-align:center;}
.repertoire-copy { padding:110px 8vw 90px 6vw; display:flex; flex-direction:column; justify-content:center; }
.repertoire-copy>p:not(.kicker) { color:#928d84; line-height:1.8; max-width:520px; font-size:14px; margin:28px 0 35px; }
.genre-list { display:flex; flex-wrap:wrap; gap:9px; }
.genre-list button {border:1px solid #322f2b;padding:11px 14px;background:transparent;color:#afa79a;font:500 10px "DM Sans",sans-serif;letter-spacing:.15em;cursor:pointer;transition:.22s ease;}
.genre-list button:hover,.genre-list button:focus-visible,.genre-list button.active {border-color:var(--gold);background:rgba(183,154,99,.1);color:#f2e8d7;outline:none;}
.repertoire-samples { margin-top:34px; border-top:1px solid #2d2a26; }
.repertoire-samples p { display:grid; grid-template-columns:150px 1fr; gap:20px; margin:0; padding:15px 0; border-bottom:1px solid #2d2a26; color:#8f897f; font-size:12px; line-height:1.55; }
.repertoire-samples span { color:#d2c8b9; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.included { padding:125px 7vw; background:#f4efe6; color:#111; display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; }
.included-grid { display:grid; grid-template-columns:1fr 1fr; border-left:1px solid #cfc5b6; border-top:1px solid #cfc5b6; }
.included-grid article { padding:30px; min-height:230px; border-right:1px solid #cfc5b6; border-bottom:1px solid #cfc5b6; }
.included-grid h3 { margin:42px 0 10px; }
.included-grid p { color:#6f685f; }

.about { display:grid; grid-template-columns:1.3fr .7fr; gap:8vw; padding:130px 7vw; background:#171512; }
.about-copy>p:not(.kicker) { color:#a49d92; max-width:720px; line-height:1.8; font-size:14px; }
.about-card { border:1px solid #39342d; padding:42px; align-self:center; background:#11100f; }
.about-card>span { color:var(--gold); font-size:9px; letter-spacing:.2em; }
.about-card h3 { font-family:"Playfair Display"; font-weight:500; font-size:30px; line-height:1.2; margin:20px 0 30px; }
.about-lines p { border-top:1px solid #2f2c28; padding:14px 0; margin:0; color:#9b958b; font-size:11px; }
.faq { display:grid; grid-template-columns:.65fr 1.35fr; gap:8vw; padding:120px 7vw; background:#0d0c0b; }
.faq-list { border-top:1px solid var(--line); }
.faq details { border-bottom:1px solid var(--line); padding:0; }
.faq summary { list-style:none; cursor:pointer; display:flex; justify-content:space-between; align-items:center; gap:20px; padding:25px 0; font-family:"Playfair Display"; font-size:21px; }
.faq summary::-webkit-details-marker { display:none; }
.faq summary span { color:var(--gold); font-family:"DM Sans"; font-size:18px; transition:transform .2s; }
.faq details[open] summary span { transform:rotate(45deg); }
.faq-answer {max-width:760px;padding:0 50px 25px 0;color:#8f897f;font-size:14px;line-height:1.75;}
.faq details p {max-width:700px;margin:0 0 14px;padding:0;color:inherit;font-size:inherit;line-height:inherit;}
.faq details p:last-child {margin-bottom:0;}
.faq-answer ol,.faq-answer ul {max-width:700px;margin:0 0 18px;padding-left:22px;}
.faq-answer li {margin:7px 0;padding-left:5px;}
.faq-answer strong {color:#d4c7b3;font-weight:600;}

.booking { display:grid; grid-template-columns:.8fr 1.2fr; gap:8vw; padding:130px 7vw; background:var(--paper); color:var(--ink); }
.booking-copy>p:not(.kicker) { color:#625d55; line-height:1.8; font-size:16px; max-width:480px; }
.availability { margin-top:34px; font-size:12px; letter-spacing:.16em; color:#846f4f; }
.booking-form { display:flex; flex-direction:column; gap:26px; }
.row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.booking-form label { display:flex; flex-direction:column; gap:11px; font-size:13px; line-height:1.3; letter-spacing:.14em; color:#625b52; font-weight:600; }
.booking-form input,.booking-form select,.booking-form textarea {
  width:100%; border:0; border-bottom:1px solid #b5a894; background:transparent; padding:14px 0 15px;
  font:17px/1.4 "DM Sans",sans-serif; outline:0; border-radius:0; color:#1a1815;
}
.booking-form input::placeholder,.booking-form textarea::placeholder { color:#8f8a83; opacity:1; }
.booking-form textarea { resize:vertical; }
.booking-form input:focus,.booking-form select:focus,.booking-form textarea:focus { border-color:#6c5b42; }
.submit { align-self:flex-start; margin-top:8px; background:#111; color:var(--paper); border-color:#111; }
.submit:hover { color:#111; border-color:#111; }
.form-note { font-size:12px; line-height:1.5; color:#7e7569; margin:0; }
.form-note.success { color:#5d4a2c; font-size:13px; }
.form-note.error { color:#8a2f25; font-size:13px; }

footer { padding:50px 4.5vw; display:grid; grid-template-columns:1fr auto; gap:24px; align-items:center; border-top:1px solid var(--line); background:#090909; }
.footer-links { display:flex; max-width:900px; flex-wrap:wrap; justify-content:flex-end; gap:16px 24px; }
.footer-links a { font-size:11px; letter-spacing:.12em; text-transform:uppercase; color:#aaa298; }
footer>p { color:#67625c; font-size:10px; margin:0; }
footer>small { color:#4f4b46; font-size:9px; text-align:right; }
.mobile-book { display:none; }

@media (max-width: 980px) {
  .nav nav { display:none; }
  .hero { grid-template-columns:1fr; padding-top:130px; }
  .hero-visual { margin-top:25px; }
  .portrait-card { width:min(500px,90vw); }
  .statement { grid-template-columns:45px 1fr; }
  .statement-copy { grid-column:2; }
  .occasions { grid-template-columns:1fr; }
  .occasion { min-height:500px; border-right:0; border-bottom:1px solid var(--line); }
  .services-header,.about,.booking,.repertoire,.process,.included,.faq { grid-template-columns:1fr; }
  .service-grid { grid-template-columns:1fr 1fr; }
  .package-grid { grid-template-columns:1fr; gap:18px; }
  .package-card + .package-card { border-left:1px solid #cfc5b6; }
  .package-card.signature { transform:none; min-height:580px; padding-top:42px; }
  .package-top { height:auto; min-height:auto; flex-basis:auto; }
  .package-card h3 { min-height:auto; }
  .price { display:block; height:auto; flex-basis:auto; padding:28px 0; }
  .wedding-strip { flex-wrap:wrap; }
  .wedding-strip a { width:100%; margin-left:0; }
  .repertoire-visual { min-height:520px; order:2; }
  .process-steps article { grid-template-columns:36px 170px 1fr; }
}
@media (max-width: 640px) {
  .topline { justify-content:space-between; padding:0 20px; gap:10px; font-size:7px; letter-spacing:.12em; }
  .nav { height:76px; padding:0 20px; }
  .brand-copy { display:none; }
  .btn-small { font-size:9px; padding:0 13px; }
  .hero { padding:140px 20px 60px; }
  .hero-proof { grid-template-columns:1fr; margin-top:50px; }
  .hero-actions { flex-direction:column; align-items:flex-start; }
  .statement,.services,.packages,.about,.booking,.process,.included,.faq { padding:85px 24px; }
  .statement { grid-template-columns:1fr; }
  .section-number { display:none; }
  .statement-copy { grid-column:1; }
  .service-grid { grid-template-columns:1fr; }
  .services-header { margin-bottom:40px; }
  .occasion { min-height:440px; }
  .package-card { min-height:auto; }
  .row { grid-template-columns:1fr; }
  .repertoire-copy { padding:80px 24px; }
  .sound-stage{min-width:0;width:100%;}.waveform{width:80%;gap:4px;}.audio-controls{flex-wrap:wrap;justify-content:center;margin-top:16px;}.audio-controls button{min-width:86px;}
  .repertoire-samples p { grid-template-columns:1fr; gap:7px; }
  .process-steps article { grid-template-columns:34px 1fr; }
  .process-steps article p { grid-column:2; }
  .included-grid { grid-template-columns:1fr; }
  .included-grid article { min-height:190px; }
  .faq-answer { padding-right:0; }
  .wedding-strip { gap:18px; }
  .wedding-strip .divider { display:none; }
  footer { grid-template-columns:1fr; padding:40px 24px; }
  footer>small { text-align:left; }
  body { padding-bottom:64px; }
  .mobile-book { position:fixed; z-index:30; display:flex; left:0; right:0; bottom:0; height:64px; padding:0 20px; background:var(--gold); color:#0b0b0b; align-items:center; justify-content:space-between; box-shadow:0 -12px 30px rgba(0,0,0,.28); }
  .mobile-book span { font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
  .mobile-book strong { font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
}

/* Photographic experiences, matched to the supplied editorial reference. */
.services {padding:76px 2.3vw 58px;background:#141412;}
.services-header {grid-template-columns:1.45fr 1fr;gap:8vw;margin:0 2vw 38px;align-items:center;}
.services .kicker {color:#b79b65;font-size:12px;letter-spacing:.4em;margin-bottom:14px;}
.services h2 {font-size:clamp(48px,5.5vw,90px);line-height:1.02;letter-spacing:-.045em;margin:0;}
.services h2 em {color:#b79b65;font-weight:500;}
.services-intro {max-width:390px;justify-self:end;}
.services-intro p {font-family:'Playfair Display',serif;font-size:20px;line-height:1.5;color:#eeeae3;margin:0 0 20px;}
.event-inquiry {min-height:52px;display:flex;align-items:center;justify-content:center;gap:12px;padding:14px 24px;border:1px solid #b79b65;color:#b79b65;text-transform:uppercase;letter-spacing:.25em;font-size:12px;text-decoration:none;}
.service-grid {grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border:0;}
.experience-card {position:relative;display:block;aspect-ratio:1.58;overflow:hidden;border:1px solid #646052;color:#f7f3ec;text-decoration:none;background:#24221e;}
.experience-card img,.experience-card video {width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease;}
.experience-card::after {content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),transparent 35%,rgba(0,0,0,.12) 48%,rgba(0,0,0,.87) 100%);}
.experience-number {position:absolute;z-index:1;top:18px;left:20px;color:#b79b65;font-size:14px;letter-spacing:.1em;}
.experience-caption {position:absolute;z-index:1;bottom:18px;left:20px;right:60px;}
.experience-caption h3 {font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(22px,2vw,33px);line-height:1.15;margin:0 0 5px;letter-spacing:-.025em;}
.experience-caption p {font-size:16px;line-height:1.4;margin:0;color:#e3e2e0;}
.experience-arrow {position:absolute;z-index:1;right:20px;bottom:26px;border:1px solid #b79b65;border-radius:50%;width:40px;height:40px;display:grid;place-items:center;background:#10100fc9;font-size:24px;transition:background .2s,color .2s;}
.experience-card:hover img,.experience-card:hover video {transform:scale(1.045);}
.experience-card:hover .experience-arrow {background:#b79b65;color:#141412;}
.experience-card:focus-visible,.event-inquiry:focus-visible {outline:3px solid #b79b65;outline-offset:4px;}
@media(max-width:1100px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.services-header{gap:30px;}.experience-caption h3{font-size:28px;}}
@media(max-width:650px){.services{padding:65px 20px 45px;}.services-header{grid-template-columns:1fr;margin:0 0 30px;gap:24px;}.services h2{font-size:clamp(44px,10vw,64px);}.services-intro{justify-self:start;max-width:none;}.services-intro p{font-size:18px;}.service-grid{grid-template-columns:1fr;gap:14px;}.experience-card{aspect-ratio:1.4;}.experience-caption h3{font-size:27px;}.experience-caption p{font-size:16px;}}
@media(prefers-reduced-motion:reduce){.experience-card img,.experience-card video,.experience-arrow{transition:none;}}

/* Centered inquiry-to-encore editorial sequence. */
.process {display:block;padding:64px 3.3vw 50px;background:#10100e;text-align:center;}
.process-heading {margin:0 auto 36px;}
.process-heading .kicker {color:#b79b65;font-size:14px;letter-spacing:.3em;margin:0 0 22px;}
.process h2 {font-size:clamp(42px,4.3vw,76px);line-height:1.02;}
.process h2 em {color:#b79b65;}
.process-steps {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;border:0;}
.process-steps article {display:block;padding:0;border:0;min-width:0;}
.process-steps img {display:block;width:100%;height:auto;aspect-ratio:1.59;object-fit:cover;}
.process-number {position:relative;margin:26px -13px 18px;display:flex;align-items:center;gap:12px;}
.process-number::before,.process-number::after {content:'';height:1px;flex:1;background:#b79b65;}
.process-steps article:first-child .process-number {margin-left:26%;}
.process-steps article:first-child .process-number::before {flex:.48;}
.process-steps article:last-child .process-number {margin-right:17%;}
.process-steps article:last-child .process-number::after {flex:.65;}
.process-number span {color:#b79b65;font-size:14px;letter-spacing:.12em;}
.process-steps h3 {font-size:clamp(24px,1.8vw,32px);line-height:1.25;margin:0 12px 12px;}
.process-steps p {max-width:370px;padding:0 12px;margin:0 auto;color:#b3ada2;font-size:16px;line-height:1.65;}
.process-inquiry {width:fit-content;margin:38px auto 0;min-width:290px;}
@media(max-width:700px){.process{padding:60px 24px 48px;}.process-heading .kicker{font-size:12px;letter-spacing:.22em;}.process h2{font-size:clamp(36px,7.6vw,52px);}.process-steps{grid-template-columns:1fr;gap:34px;}.process-number,.process-steps article:first-child .process-number,.process-steps article:last-child .process-number{margin:20px 14% 16px;}.process-steps article .process-number::before,.process-steps article .process-number::after{flex:1;}.process-steps h3{font-size:28px;}.process-inquiry{min-width:0;width:100%;max-width:325px;}}

/* Specialty bellydance flute experience */
.specialty-show{position:relative;overflow:hidden;background:#111;line-height:0;}
.specialty-show>img{display:block;width:100%;height:auto;}
.specialty-show-button{position:absolute;z-index:2;left:58.7%;top:64.5%;width:25.2%;height:9.7%;}
.specialty-show-button:focus-visible{outline:3px solid #d3a95e;outline-offset:4px;}
.specialty-show-mobile{display:none;}
@media(max-width:760px){
  .specialty-show{min-height:640px;line-height:normal;background:url('specialty-emerald-wedding-v2.png') 32% center/cover no-repeat;color:#f4efe6;isolation:isolate;}
  .specialty-show::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(10,9,8,.12),rgba(10,9,8,.76) 48%,rgba(10,9,8,.97));}
  .specialty-show>img,.specialty-show-button{display:none;}
  .specialty-show-mobile{display:flex;min-height:640px;padding:290px 24px 40px;flex-direction:column;align-items:flex-start;justify-content:flex-end;}
  .specialty-show-mobile>p{margin:0 0 16px;color:#d2b47e;font-size:12px;letter-spacing:.32em;}
  .specialty-show-mobile h2{margin:0;font-family:"Playfair Display",serif;font-size:42px;font-weight:500;line-height:1.03;}
  .specialty-show-mobile>span{margin:18px 0;color:#ddd5ca;font-size:11px;line-height:1.6;letter-spacing:.16em;}
  .specialty-show-mobile>strong{color:#c5a15f;font-family:"Playfair Display",serif;font-size:52px;font-weight:500;line-height:1;margin-bottom:22px;}
  .specialty-show-mobile .btn{width:100%;height:auto;min-height:54px;justify-content:space-between;background:rgba(10,10,10,.72);border-color:#d3a95e;color:#f4efe6;}
  .specialty-show-mobile small{width:100%;margin-top:22px;color:#c9aa70;font-size:9px;line-height:1.5;letter-spacing:.17em;text-align:center;text-transform:uppercase;}
}

/* Panoramic Lyzz Hern Standard with ivory service columns. */
.included {display:block;padding:0;background:#f4efe6;color:#111;}
.included-intro {position:relative;isolation:isolate;min-height:clamp(440px,29.3vw,520px);display:flex;flex-direction:column;justify-content:center;padding:70px 5.9vw;background:#11100d;color:#f4efe6;overflow:hidden;}
.included-intro::before {content:'';position:absolute;z-index:-2;inset:0;background:url('standard-flute-wide.png') center 56%/cover no-repeat;}
.included-intro::after {content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(17,16,13,.96) 0%,rgba(17,16,13,.90) 20%,rgba(17,16,13,.66) 34%,rgba(17,16,13,.18) 54%,transparent 73%);}
.included-intro .kicker {color:#b79b65;font-size:14px;letter-spacing:.2em;margin:0 0 28px;}
.included h2 {font-size:clamp(42px,4.1vw,73px);line-height:1.05;max-width:640px;letter-spacing:-.04em;}
.included h2 em {color:#b79b65;}
.included-grid {grid-template-columns:repeat(4,minmax(0,1fr));border:0;padding:50px 3.3vw 60px;}
.included-grid article {padding:8px 2.7vw 30px;min-height:240px;border:0;border-right:1px solid #cfc5b6;}
.included-grid article:last-child {border-right:0;}
.included-grid b {color:#b79b65;display:block;font-size:16px;letter-spacing:.12em;}
.included-grid b::after {content:'';display:block;width:42px;height:1px;background:#b79b65;margin-top:18px;}
.included-grid h3 {font-size:clamp(23px,1.65vw,30px);line-height:1.2;margin:34px 0 16px;letter-spacing:-.035em;}
.included-grid p {color:#777169;font-size:16px;line-height:1.6;}
@media(max-width:1000px){.included-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 0;}.included-grid article:nth-child(2){border-right:0;}.included-intro{min-height:400px;}}
@media(max-width:600px){.included{padding:0;}.included-intro{min-height:500px;padding:48px 24px;justify-content:flex-start;}.included-intro::before{inset:0;background-position:64% center;}.included-intro::after{background:linear-gradient(180deg,#11100df5 0%,#11100ddb 34%,#11100d73 58%,transparent 82%);}.included-intro .kicker{font-size:12px;margin-bottom:22px;}.included h2{font-size:clamp(36px,8vw,46px);}.included-grid{grid-template-columns:1fr;padding:32px 24px;gap:0;}.included-grid article{min-height:0;padding:26px 0 30px;border-right:0;border-bottom:1px solid #cfc5b6;}.included-grid article:last-child{border-bottom:0;}.included-grid h3{font-size:28px;margin-top:25px;}}

/* Supplied LYZOVIN identity in both logo placements. */
.brand-logo {display:block;width:230px;height:auto;max-width:100%;object-fit:contain;}
.nav .brand {flex-shrink:0;}
.footer-brand .brand-logo {width:280px;}
@media(max-width:600px){.nav .brand-logo{width:180px;}.nav{gap:12px;}.nav .btn-small{padding:12px;font-size:10px;}}
@media(max-width:360px){.nav .brand-logo{width:150px;}}

/* Editorial About Lyzz with ivory booking inset. */
.about {position:relative;isolation:isolate;overflow:hidden;grid-template-columns:1.35fr 1fr;gap:8vw;padding:110px 6.3vw 66px 4.5vw;min-height:760px;background:#0d0d0b;align-items:center;}
.about::before {content:'';position:absolute;z-index:-2;inset:0 0 0 43%;background:url('about-flute-roses.jpg') right top/auto 100% no-repeat;}
.about::after {content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#0d0d0b 0%,#0d0d0bf2 34%,#0d0d0b8c 48%,transparent 70%);}
.about-copy .kicker {color:#b79b65;font-size:14px;letter-spacing:.24em;margin:0 0 28px;}
.about h2 {font-size:clamp(48px,5.8vw,104px);line-height:1.02;letter-spacing:-.045em;margin:0 0 32px;}
.about h2 em {color:#b79b65;}
.about-copy>p:not(.kicker) {color:#d0cabd;font-size:18px;line-height:1.7;margin:0 0 28px;max-width:760px;}
.about-card {align-self:end;background:#f4efe6;color:#111;border:1px solid #b79b65;padding:38px 3.2vw;margin-top:220px;}
.about-card>span {color:#a88850;font-size:13px;letter-spacing:.2em;}
.about-card h3 {font-size:clamp(28px,2.6vw,46px);line-height:1.1;letter-spacing:-.035em;margin:16px 0 28px;}
.about-lines {display:grid;grid-template-columns:1fr 1fr;column-gap:30px;border-top:1px solid #b79b65;}
.about-lines p {color:#25221d;font-size:14px;line-height:1.5;padding:16px 0;border-top:0;border-bottom:1px solid #b79b65;}
.about-inquiry {background:#0d0d0b;color:#b79b65;margin-top:28px;text-align:center;letter-spacing:.15em;outline:1px solid #b79b65;outline-offset:3px;}
@media(max-width:1000px){.about{grid-template-columns:1.1fr 1fr;gap:40px;padding:80px 5vw 60px;}.about-copy>p:not(.kicker){font-size:16px;}.about-card{padding:30px;}.about-lines{column-gap:16px;}.about-inquiry{padding:14px 12px;letter-spacing:.08em;}}
@media(max-width:700px){.about{grid-template-columns:1fr;padding:64px 24px 48px;gap:30px;}.about::before{inset:0;background-size:auto 480px;opacity:.7;}.about::after{background:linear-gradient(180deg,#0d0d0b9c,#0d0d0bd9 350px,#0d0d0b 580px);}.about h2{font-size:clamp(42px,9vw,62px);}.about-card{margin-top:0;padding:30px 24px;width:100%;}.about-card h3{font-size:34px;}.about-copy>p:not(.kicker){font-size:16px;}}

/* Editorial lessons conversion section */
.lessons-preview{padding:0;background:#f5f1e8;color:#171512;scroll-margin-top:96px;}
.lessons-reference-art{position:relative;width:100%;}
.lessons-reference-art>img{display:block;width:100%;height:auto;}
.lessons-reference-button{position:absolute;z-index:2;left:62.5%;top:47.7%;width:18.1%;height:7%;}
.lessons-reference-button:focus-visible{outline:3px solid #171512;outline-offset:3px;}
.lessons-responsive{display:none;}
.lessons-index{display:flex;align-items:center;gap:22px;color:#a88445;font-size:12px;letter-spacing:.2em;margin-bottom:24px;}
.lessons-index i{display:block;height:1px;flex:1;background:#ad8b50;}
.lessons-editorial-grid{display:grid;grid-template-columns:61% 39%;grid-template-rows:minmax(230px,auto) minmax(260px,1fr);align-items:stretch;}
.lesson-visual{position:relative;overflow:hidden;min-width:0;background:#17130f;}
.lesson-visual::after{content:"";position:absolute;inset:38% 0 0;background:linear-gradient(180deg,transparent,rgba(7,6,5,.88));pointer-events:none;}
.lesson-visual img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.82) contrast(1.03);}
.lesson-piano{grid-column:1;grid-row:1/3;min-height:610px;}
.lesson-piano img{object-position:center 52%;}
.lesson-flute{grid-column:2;grid-row:2;min-height:275px;margin-left:-7vw;border:10px solid #f5f1e8;border-right:0;align-self:end;}
.lesson-flute img{object-position:center 60%;}
.lesson-card-copy{position:absolute;z-index:2;left:32px;right:28px;bottom:24px;padding-left:20px;border-left:2px solid #b89455;color:#f7f2e9;}
.lesson-card-copy span{display:block;color:#c5a464;font-size:13px;font-weight:600;letter-spacing:.12em;margin-bottom:10px;}
.lesson-card-copy h3{font-family:"Playfair Display";font-size:clamp(32px,2.8vw,46px);font-weight:500;line-height:1;margin:0 0 8px;}
.lesson-card-copy p{color:#e3ded5;font-size:15px;line-height:1.5;margin:0;}
.lessons-preview-heading{grid-column:2;grid-row:1;padding:14px 2vw 24px 3vw;align-self:center;}
.lessons-preview-heading .kicker{color:#9c7840;letter-spacing:.28em;}
.lessons-preview-heading h2{font-size:clamp(44px,4.5vw,68px);line-height:.97;letter-spacing:-.045em;margin:16px 0 20px;}
.lessons-preview-heading h2 em{color:#aa884b;}
.lessons-preview-heading>p:not(.kicker){max-width:520px;color:#655e55;font-size:16px;line-height:1.5;margin-bottom:24px;}
.lessons-explore{display:inline-flex;gap:38px;align-items:center;background:#b49358;border-color:#b49358;color:#fff;padding:15px 22px;letter-spacing:.18em;}
.lessons-explore:hover{background:#9d7b42;border-color:#9d7b42;color:#fff;}
@media(max-width:980px){.lessons-editorial-grid{grid-template-columns:56% 44%;}.lesson-piano{min-height:560px;}.lesson-flute{margin-left:-5vw;min-height:250px}.lessons-preview-heading{padding-left:4vw}.lesson-card-copy{left:26px;bottom:22px}.lesson-card-copy h3{font-size:36px}}
@media(max-width:760px){.lessons-reference-art{display:none}.lessons-responsive{display:block}.lessons-preview{padding:20px 20px 42px}.lessons-editorial-grid{display:flex;flex-direction:column}.lessons-preview-heading{order:1;padding:6px 4px 28px}.lessons-preview-heading h2{font-size:clamp(44px,12vw,58px)}.lesson-piano{order:2;min-height:430px}.lesson-flute{order:3;min-height:250px;margin:12px 0 0;border:0}.lesson-card-copy{left:22px;right:18px;bottom:20px}.lessons-index{margin-bottom:20px}.lessons-explore{width:100%;justify-content:space-between}.lesson-card-copy h3{font-size:34px}}

/* Gallery and lessons pages */
.subpage{background:#0d0c0b;color:#f4efe6;}
.subpage .nav{position:fixed;top:0;background:rgba(13,12,11,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.subpage .nav .brand{position:static;transform:none;}
.subpage-main{padding-top:110px;}
.lesson-hero{position:relative;overflow:hidden;background:#0d0c0b;line-height:0;}
.lesson-hero>img{display:block;width:100%;height:auto;}
.lesson-hero-button{position:absolute;left:7.1%;top:78.6%;width:14.6%;height:7.7%;z-index:2;}
.lesson-hero-button:focus-visible{outline:3px solid #d1ad68;outline-offset:4px;}
.lesson-hero-mobile{display:none;}
.lesson-waitlist{position:relative;overflow:hidden;background:#080808;border-top:1px solid #29251f;line-height:normal;}
.lesson-waitlist>img{display:block;width:100%;height:auto;}
.lesson-waitlist>.waitlist-copy{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.lesson-waitlist>.waitlist-form{position:absolute;left:59.65%;top:17.25%;width:28.4%;height:58.2%;box-sizing:border-box;}
.waitlist-copy h2,.lesson-benefits-heading h2{font-size:clamp(48px,5.6vw,86px);line-height:.98;letter-spacing:-.045em;margin:18px 0 28px;}
.waitlist-copy h2 em,.lesson-benefits-heading h2 em{color:#b79860;}
.waitlist-copy>p:not(.kicker),.lesson-benefits-heading>p:not(.kicker){max-width:580px;color:#a9a197;font-size:17px;line-height:1.75;}
.waitlist-form{display:flex;flex-direction:column;gap:clamp(12px,1.07vw,22px);padding:clamp(20px,2.05vw,42px);background:#f3eee5;color:#171512;}
.waitlist-form label{display:flex;flex-direction:column;gap:10px;color:#655e54;font-size:12px;font-weight:600;letter-spacing:.14em;}
.waitlist-form input,.waitlist-form select{width:100%;padding:13px 0 15px;border:0;border-bottom:1px solid #b9aa93;border-radius:0;outline:0;background:transparent;color:#171512;font:17px/1.4 "DM Sans",sans-serif;}
.waitlist-form input::placeholder{color:#8f8980;opacity:1;}
.waitlist-form input:focus,.waitlist-form select:focus{border-color:#7f6743;}
.waitlist-button{justify-content:space-between;margin-top:8px;background:#111;color:#f4efe6;border-color:#111;}
.waitlist-form small{color:#756e64;font-size:12px;line-height:1.5;}
.lesson-benefits{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:110px 7vw;background:#ede5d8;color:#171512;}
.lesson-benefits-heading{position:sticky;top:140px;align-self:start;}
.lesson-benefits-heading>p:not(.kicker){color:#6b645b;}
.benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid #c3b59f;border-left:1px solid #c3b59f;}
.benefit-grid article{min-height:230px;padding:30px;border-right:1px solid #c3b59f;border-bottom:1px solid #c3b59f;}
.benefit-grid b{color:#9f7b42;font-size:12px;letter-spacing:.18em;}
.benefit-grid h3{margin:24px 0 12px;font:500 28px/1.15 "Playfair Display",serif;}
.benefit-grid p{margin:0;color:#6b645b;font-size:15px;line-height:1.7;}
.subhero{display:grid;grid-template-columns:1fr .85fr;min-height:620px;padding:100px 7vw 80px;align-items:center;gap:7vw;background:radial-gradient(circle at 80% 30%,#2c261e 0,#11100e 38%,#0b0b0a 72%);}
.subhero h1{font-size:clamp(64px,8vw,128px);line-height:.86;letter-spacing:-.055em;margin:20px 0 28px;}
.subhero-copy{max-width:540px;color:#b1a99e;font-size:17px;line-height:1.8;}
.subhero-art{position:relative;min-height:440px;}
.subhero-art img{position:absolute;width:78%;height:92%;right:0;top:0;object-fit:cover;filter:saturate(.65) contrast(1.08);}
.subhero-art::after{content:"";position:absolute;inset:35% 45% 0 0;border:1px solid rgba(183,154,99,.6);}
.gallery-hero-reference{position:relative;overflow:hidden;background:#0b0b0a;line-height:0;}
.gallery-hero-reference>img{display:block;width:100%;height:auto;}
.gallery-hero-mobile{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.film-category{padding:100px 7vw;border-top:1px solid #29251f;}
.film-category-head{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:46px;}
.film-category h2{font-size:clamp(44px,5vw,76px);line-height:1;margin:12px 0 0;}
.film-category-head>p{max-width:460px;color:#9f988e;font-size:15px;line-height:1.7;}
.film-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.film-tile{position:relative;min-height:390px;overflow:hidden;background:#171512;border:1px solid #302b24;}
.film-tile img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;filter:saturate(.55) brightness(.72);transition:transform .7s ease,filter .7s ease;}
.film-tile:hover img{transform:scale(1.035);filter:saturate(.75) brightness(.82);}
.film-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(6,6,5,.92));}
.film-label{position:absolute;z-index:2;left:26px;right:26px;bottom:24px;display:flex;justify-content:space-between;align-items:end;gap:20px;}
.film-label span{font-family:"Playfair Display";font-size:24px;}
.film-label small{color:#b79a63;font-size:10px;letter-spacing:.15em;text-transform:uppercase;text-align:right;}
.film-note{margin:28px 0 0;color:#857f76;font-size:12px;letter-spacing:.05em;}
.gallery-cta{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center;padding:80px 7vw;background:#b79a63;color:#111;}
.gallery-cta h2{font-size:clamp(42px,5vw,72px);line-height:1;margin:0;}
.gallery-cta .btn{background:#111;color:#f4efe6;border-color:#111;}
.lesson-programs{display:grid;grid-template-columns:1fr 1fr;background:#f3eee5;color:#171512;}
.lesson-program{padding:90px 7vw;border-right:1px solid #cdbfa9;}
.lesson-program:last-child{border-right:0;}
.lesson-program h2{font-size:clamp(50px,5vw,78px);line-height:1;margin:16px 0 24px;}
.lesson-program p{color:#6d665d;font-size:16px;line-height:1.75;max-width:560px;}
.lesson-points{list-style:none;padding:0;margin:34px 0 0;border-top:1px solid #cdbfa9;}
.lesson-points li{padding:16px 0;border-bottom:1px solid #cdbfa9;font-size:14px;}
.lesson-path{padding:110px 7vw;background:#12110f;}
.lesson-path h2{font-size:clamp(50px,6vw,88px);line-height:1;margin:16px 0 50px;}
.lesson-path-reference{position:relative;overflow:hidden;background:#11100e;line-height:0;}
.lesson-path-reference>img{display:block;width:100%;height:auto;}
.lesson-path-mobile{display:none;}
.lesson-steps{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #3b342a;}
.lesson-steps article{padding:34px 32px 20px 0;border-right:1px solid #3b342a;}
.lesson-steps article+article{padding-left:32px;}
.lesson-steps b{color:#b79a63;font-size:12px;letter-spacing:.18em;}
.lesson-steps h3{font-family:"Playfair Display";font-size:28px;font-weight:500;margin:24px 0 14px;}
.lesson-steps p{color:#958e84;font-size:14px;line-height:1.7;}
@media(max-width:900px){.subhero{grid-template-columns:1fr;padding-top:80px;}.subhero-art{min-height:360px;}.lesson-waitlist,.lesson-benefits{grid-template-columns:1fr;}.lesson-benefits-heading{position:static;}.film-grid,.lesson-steps{grid-template-columns:1fr;}.film-tile{min-height:430px;}.lesson-programs{grid-template-columns:1fr;}.lesson-program{border-right:0;border-bottom:1px solid #cdbfa9;}.gallery-cta{grid-template-columns:1fr;}.film-category-head{align-items:start;flex-direction:column;}.lesson-steps article,.lesson-steps article+article{padding:28px 0;border-right:0;border-bottom:1px solid #3b342a;}}
@media(max-width:620px){.subpage-main{padding-top:120px;}.lesson-hero{min-height:660px;line-height:normal;background:url('lessons-hero.png') 69% center/cover no-repeat;isolation:isolate;}.lesson-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(8,8,7,.96),rgba(8,8,7,.84) 58%,rgba(8,8,7,.35));}.lesson-hero>img,.lesson-hero-button{display:none;}.lesson-hero-mobile{display:flex;min-height:660px;padding:86px 24px 48px;flex-direction:column;justify-content:center;align-items:flex-start;color:#f4efe6;}.lesson-hero-mobile>p{margin:0 0 30px;color:#c8a462;font-size:12px;font-weight:600;letter-spacing:.18em;}.lesson-hero-mobile h1{margin:0 0 34px;font:600 clamp(58px,19vw,82px)/.88 "DM Sans",sans-serif;letter-spacing:-.06em;}.lesson-hero-mobile h1 em{color:#c5a260;font-weight:500;}.lesson-hero-mobile>span{max-width:440px;color:#e2ddd4;font-size:17px;line-height:1.7;}.lesson-hero-mobile .btn{margin-top:28px;background:#f4efe6;color:#171512;border-color:#f4efe6;}.lesson-waitlist,.lesson-benefits{padding:74px 24px;}.waitlist-copy h2,.lesson-benefits-heading h2{font-size:48px;}.waitlist-form{padding:28px 22px;}.benefit-grid{grid-template-columns:1fr;}.benefit-grid article{min-height:0;padding:28px 24px;}.subhero{padding:70px 24px 60px;}.subhero h1{font-size:62px;}.subhero-art{min-height:300px;}.film-category,.lesson-program,.lesson-path{padding:70px 24px;}.film-tile{min-height:340px;}.gallery-cta{padding:60px 24px;}.lesson-ready{min-height:560px;line-height:normal;background:url('lessons-ready.png') 77% center/cover no-repeat;color:#171512;isolation:isolate;}.lesson-ready::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(247,243,234,.94),rgba(247,243,234,.95) 58%,rgba(247,243,234,.76));}.lesson-ready>img,.lesson-ready-button{display:none;}.lesson-ready-mobile{display:flex;min-height:560px;padding:70px 24px;flex-direction:column;align-items:flex-start;justify-content:center;}.lesson-ready-mobile>p{margin:0 0 26px;color:#b08b4e;font-size:12px;font-weight:600;letter-spacing:.18em;}.lesson-ready-mobile h2{margin:0 0 20px;font:600 54px/1 "DM Sans",sans-serif;letter-spacing:-.05em;}.lesson-ready-mobile>span{max-width:450px;margin-bottom:30px;font-size:19px;line-height:1.5;}.lesson-ready-mobile .btn{height:auto;min-height:56px;background:transparent;border-color:#171512;color:#171512;}}

@media(max-width:900px){
  .lesson-waitlist{display:block;padding:74px 24px;background:linear-gradient(90deg,rgba(8,8,7,.96),rgba(8,8,7,.82)),url('private-lessons.png') 34% center/cover no-repeat;}
  .lesson-waitlist>img{display:none;}
  .lesson-waitlist>.waitlist-copy{position:relative;width:auto;height:auto;padding:0;margin:0;overflow:visible;clip:auto;white-space:normal;border:0;}
  .lesson-waitlist>.waitlist-form{position:relative;left:auto;top:auto;width:100%;height:auto;max-width:620px;margin:42px 0 0;}
}

@media(max-width:700px){
  .lesson-path-reference{line-height:normal;background:linear-gradient(180deg,rgba(8,8,7,.58),rgba(8,8,7,.94) 52%,#0b0b0a),url('personalized-approach.png') 28% top/auto 620px no-repeat;}
  .lesson-path-reference>img{display:none;}
  .lesson-path-mobile{display:block;padding:72px 24px 46px;}
  .lesson-path-mobile h2{margin:16px 0 46px;font-size:clamp(48px,13vw,66px);line-height:.96;letter-spacing:-.045em;}
  .lesson-path-mobile h2 em{color:#c9a664;}
}

@media(max-width:700px){
  .gallery-hero-reference{min-height:650px;line-height:normal;background:linear-gradient(90deg,rgba(8,8,7,.96),rgba(8,8,7,.84) 58%,rgba(8,8,7,.28)),url('gallery-hero.png') 72% center/cover no-repeat;}
  .gallery-hero-reference>img{display:none;}
  .gallery-hero-mobile{position:relative;width:auto;height:auto;padding:92px 24px 64px;margin:0;overflow:visible;clip:auto;white-space:normal;border:0;}
  .gallery-hero-mobile h1{margin:24px 0 34px;font-size:clamp(64px,19vw,92px);line-height:.88;letter-spacing:-.055em;}
  .gallery-hero-mobile h1 em{color:#c9a664;}
  .gallery-hero-mobile>p:last-child{max-width:470px;color:#d8d2c9;font-size:17px;line-height:1.7;}
}

/* Full-width instrumental About reference. */
.about {grid-template-columns:1.4fr 1fr;gap:15vw;min-height:50vw;padding:8.5vw 6.3vw 3.8vw 4.5vw;}
.about::before {inset:0;background:url('about-instruments.png') center center/cover no-repeat;}
.about::after {background:linear-gradient(90deg,rgba(13,13,11,.22),rgba(13,13,11,.12) 44%,transparent 64%);}
.about h2 {font-size:clamp(48px,5.8vw,104px);}
.about-card {margin-top:13.5vw;}
@media(max-width:1000px){.about{gap:6vw;padding:80px 5vw 60px;grid-template-columns:1.15fr 1fr;}.about::after{background:linear-gradient(90deg,#0d0d0b9c,transparent 78%);}.about-card{margin-top:160px;}}
@media(max-width:700px){.about{grid-template-columns:1fr;padding:64px 24px 48px;gap:30px;}.about::before{inset:0;background-position:65% top;background-size:auto 540px;opacity:.8;}.about::after{background:linear-gradient(180deg,#0d0d0b80,#0d0d0bcc 350px,#0d0d0b 580px);}.about h2{font-size:clamp(42px,9vw,62px);}.about-card{margin-top:0;}}

/* Home hero: editorial portrait collage from supplied reference. */
.editorial-nav{top:0;height:85px;border:0;gap:24px;padding:0 4.8vw;background:#0d0d0bec;}
.editorial-nav .brand-logo{width:150px;}
.nav-destination{font-size:10px;text-transform:uppercase;letter-spacing:.28em;flex:1;color:#eee;}
.editorial-nav nav{gap:16px;}.editorial-nav nav a{font-size:12px;letter-spacing:.08em;white-space:nowrap;}
.editorial-nav .btn-small{background:transparent;border-color:#b79b65;color:#b79b65;min-width:112px;}
.editorial-hero{isolation:isolate;display:block;background:#0d0d0b;min-height:900px;padding:120px 4.9vw 56px;}
.editorial-hero .hero-content{position:relative;z-index:2;width:35%;}
.editorial-hero .eyebrow{color:#eee;font-size:12px;letter-spacing:.5em;margin-bottom:20px;}
.editorial-hero h1{font-size:clamp(60px,6.65vw,112px);line-height:.91;letter-spacing:-.055em;max-width:none;}
.editorial-hero h1 em{color:#b79b65;}
.hero-rule{width:58px;height:1px;background:#b79b65;margin:32px 0;}
.editorial-hero .hero-copy{font-family:'Playfair Display',serif;font-size:18px;line-height:1.5;margin:0 0 28px;max-width:460px;color:#e0dcd4;}
.editorial-hero .hero-actions{gap:20px;flex-wrap:wrap;}
.editorial-hero .btn{font-size:10px;letter-spacing:.2em;padding:0 22px;min-height:54px;}
.editorial-hero .hero-secondary{background:transparent;color:#eee;gap:18px;}
.hero-collage{position:absolute;inset:0 0 0 41.7%;z-index:0;}
.hero-main-frame{position:absolute;left:0;top:0;width:57%;height:100%;object-fit:cover;object-position:center top;}
.hero-detail-image{position:absolute;right:0;top:85px;width:28%;height:45%;object-fit:cover;filter:sepia(.3);}
.hero-manifesto{position:absolute;left:57%;top:106px;width:15%;padding:14px 12px 30px;background:#0d0d0b;color:#b79b65;font-size:10px;letter-spacing:.25em;line-height:3.1;text-transform:uppercase;}
.hero-manifesto::after{content:"";display:block;width:1px;height:108px;margin:18px auto 0;background:#b79b65;box-shadow:0 0 5px rgba(183,155,101,.25);}
.hero-miami-image{position:absolute;left:57%;top:44%;width:21%;height:45%;object-fit:cover;}
.hero-side-note{position:absolute;left:81%;top:74%;font-size:10px;line-height:2.7;letter-spacing:.2em;text-transform:uppercase;color:#d6ccb7;}
.hero-side-note::after{content:"";display:block;width:70px;height:1px;margin-top:10px;background:#b79b65;box-shadow:0 0 4px rgba(183,155,101,.2);}
.hero-location{position:absolute;bottom:5%;right:6%;display:flex;align-items:center;gap:28px;margin:0;color:#b79b65;letter-spacing:.3em;text-transform:uppercase;font-size:9px;white-space:nowrap;}
.hero-location i{display:block;width:114px;height:1px;background:#b79b65;box-shadow:0 0 4px rgba(183,155,101,.2);}
.hero-location .hero-city{color:#b79b65;}
.hero-location .hero-destination{color:#ddd;font-size:8px;}
.hero-arc{position:absolute;right:-7.5%;bottom:-16%;width:20%;height:69%;border:1px solid rgba(183,155,101,.42);border-radius:50%;pointer-events:none;}
.editorial-hero .hero-proof{position:relative;z-index:2;width:46%;max-width:700px;margin-top:64px;gap:26px;}
.editorial-hero .hero-proof span{font-size:12px;color:#bdb7ae;}.editorial-hero .hero-proof strong{font-size:12px;}
@media(min-width:1500px){.editorial-hero{min-height:56.3vw;}}
@media(max-width:1100px){.nav-destination{display:none;}.editorial-nav .brand{margin-right:auto;}.editorial-hero{padding-top:120px;min-height:850px;}.editorial-hero .hero-content{width:42%;}.editorial-hero h1{font-size:7.7vw;}.hero-collage{left:46%;}.hero-manifesto{display:none;}.hero-main-frame{width:75%;}.hero-detail-image{width:25%;}.hero-miami-image{left:70%;width:30%;}.hero-side-note,.hero-location,.hero-arc{display:none;}.editorial-hero .hero-proof{width:46%;grid-template-columns:1fr;gap:12px;margin-top:28px;}}
@media(max-width:700px){.editorial-nav{height:76px;padding:0 20px;}.editorial-nav .brand-logo{width:160px;}.editorial-hero{padding:108px 24px 36px;min-height:0;display:flex;flex-direction:column;gap:32px;}.editorial-hero .hero-content{width:100%;}.editorial-hero h1{font-size:clamp(58px,12vw,84px);}.editorial-hero .hero-copy{font-size:17px;}.editorial-hero .hero-actions{gap:12px;}.editorial-hero .btn{padding:0 16px;font-size:10px;}.hero-collage{position:relative;inset:auto;width:100%;height:560px;}.hero-main-frame{width:73%;}.hero-detail-image{top:0;width:25%;height:42%;}.hero-miami-image{top:46%;left:75%;width:25%;height:48%;}.editorial-hero .hero-proof{width:100%;margin:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;}.editorial-hero .hero-proof strong{font-size:10px;}.editorial-hero .hero-proof span{font-size:12px;}}

/* Preserve complete reference images, including the Miami lettering. */
.hero-main-frame {top:7.44%;height:auto;aspect-ratio:553 / 870;object-fit:contain;object-position:left top;}
.hero-miami-image {height:auto;aspect-ratio:204 / 424;object-fit:contain;object-position:center top;}
@media(max-width:1100px) and (min-width:701px){.hero-main-frame{width:70%;}.hero-miami-image{left:70%;width:30%;}}
@media(max-width:700px){.hero-collage{height:auto;aspect-ratio:1 / 1.22;}.hero-main-frame{top:0;width:73%;height:auto;}.hero-miami-image{top:46%;height:auto;}}

/* Desktop geometry follows the 1672 × 941 reference canvas. */
@media(min-width:1101px){
.editorial-hero{height:56.28vw;min-height:0;padding:6.9vw 4.9vw 0;}
.editorial-hero .hero-content{width:31.5vw;}
.editorial-hero .eyebrow{font-size:.72vw;letter-spacing:.45vw;margin-bottom:1vw;}
.editorial-hero h1{font-size:6.65vw;line-height:.75;letter-spacing:-.045em;}
.editorial-hero h1 em{display:inline-block;line-height:.75;margin-top:1.15vw;}
.hero-rule{margin:2.4vw 0 1.8vw;width:3.4vw;}
.editorial-hero .hero-copy{font-size:1.08vw;line-height:1.5;max-width:27vw;margin:0 0 1.65vw;}
.editorial-hero .hero-actions{gap:1.2vw;flex-wrap:nowrap;}
.editorial-hero .btn{min-height:3.3vw;padding:0 1.65vw;font-size:.63vw;letter-spacing:.15vw;}
.hero-collage{inset:0;}
.hero-main-frame{left:37.5%;top:7.44%;width:37.26%;height:auto;aspect-ratio:623/871;clip-path:polygon(22% 0,100% 0,100% 90%,80% 90%,80% 100%,31% 100%,31% 84.85%,22% 84.85%);}
.hero-detail-image{right:0;top:9.14%;width:16.39%;height:41.45%;object-fit:contain;filter:none;}
.hero-miami-image{left:74.82%;top:44.1%;width:12.2%;height:auto;}
.hero-manifesto{left:74.76%;top:10.8%;width:8.8%;padding:.65vw 1.35vw 2vw;font-size:.6vw;line-height:3.1;letter-spacing:.23vw;}
.hero-manifesto::after{height:6.45vw;margin-top:1.05vw;}
.hero-side-note{left:88.7%;top:74.1%;font-size:.55vw;line-height:2.8;letter-spacing:.18vw;}
.hero-side-note::after{width:4.15vw;margin-top:.6vw;}
.hero-location{bottom:6.3%;right:5.1%;gap:1.7vw;font-size:.54vw;}
.hero-location i{width:6.85vw;}
.hero-location .hero-destination{font-size:.48vw;}
.editorial-hero .hero-proof{position:absolute;left:4.9%;bottom:5.7%;width:41.6%;gap:2.35vw;margin:0;}
.editorial-hero .hero-proof div{padding-top:1.25vw;}
.editorial-hero .hero-proof strong{font-size:.72vw;margin-bottom:.8vw;}
.editorial-hero .hero-proof span{font-size:.72vw;}
.editorial-nav{height:4.19vw;padding:0 4.2vw;gap:1.6vw;background:linear-gradient(90deg,#0d0d0b 0%,#0d0d0b 41.6%,transparent 41.6%,transparent 64.1%,#0d0d0b 64.1%);}
.editorial-nav .brand-logo{width:8.3vw;}
.nav-destination{font-size:.6vw;letter-spacing:.24vw;}
.editorial-nav nav{gap:.95vw;}.editorial-nav nav a{font-size:clamp(10px,.66vw,12px);}
.editorial-nav .btn-small{min-width:6.8vw;min-height:2.4vw;font-size:.57vw;}
}

/* Full section navigation remains legible and reachable at every screen size. */
@media(max-width:1280px){
  .editorial-nav{padding-left:3vw;padding-right:3vw;gap:14px;}
  .editorial-nav .brand-logo{width:130px;}
  .editorial-nav .nav-destination{display:none;}
  .editorial-nav .section-nav{min-width:0;gap:12px;overflow-x:auto;scrollbar-width:none;}
  .editorial-nav .section-nav::-webkit-scrollbar{display:none;}
  .editorial-nav .section-nav a{font-size:11px;}
  footer{grid-template-columns:1fr;}
  .footer-links{justify-content:flex-start;}
  footer>small{text-align:left;}
}
@media(max-width:1100px){
  .editorial-nav .section-nav{display:flex;position:absolute;top:100%;left:0;width:100%;height:46px;padding:0 20px;align-items:center;background:rgba(13,13,11,.96);border-top:1px solid rgba(244,239,230,.08);border-bottom:1px solid rgba(244,239,230,.12);}
  .editorial-hero{padding-top:166px;}
}
@media(max-width:700px){
  .editorial-nav .section-nav{height:44px;}
  .editorial-hero{padding-top:152px;}
  footer{grid-template-columns:1fr;}
  .footer-links{justify-content:flex-start;gap:14px 20px;}
  footer>small{text-align:left;}
}

/* Exclude the stray line and clipped lettering baked into the portrait edge. */
@media(max-width:1100px){.hero-main-frame{clip-path:polygon(0 0,100% 0,100% 90%,80% 90%,80% 100%,0 100%);}}

/* Sharp gold rule over the original photographic caption. */
.hero-main-frame .hero-main-image {display:block;width:100%;height:auto;}
.hero-beyond-rule {position:absolute;left:86.2%;top:80.14%;width:8%;height:2px;background:#b79b65;}

/* Exact supplied Gallery inquiry banner. */
.gallery-atmosphere { width:100%; padding:0; margin:0; }
.gallery-atmosphere a { display:block; line-height:0; }
.gallery-atmosphere img { display:block; width:100%; height:auto; }
.gallery-atmosphere a:focus-visible { outline:3px solid #b79a63; outline-offset:-3px; }

/* Editable Gallery invitation, with separate photograph and live type. */
.atmosphere-live{position:relative;isolation:isolate;overflow:hidden;background:#0b0a08;min-height:35.55vw;color:#fff;}
.atmosphere-photo{position:absolute;inset:0 0 0 35%;z-index:-2;background-image:url('gallery-reception-reference.png');background-size:153.846% 100%;background-position:right center;background-repeat:no-repeat;}
.atmosphere-curve{position:absolute;inset:0 auto 0 0;width:40%;height:100%;z-index:-1;}
.atmosphere-copy{width:37%;padding:4.1vw 2.8vw 7.5vw;text-align:center;box-sizing:border-box;}
.atmosphere-eyebrow{margin:0;color:#e0d3a3;font:500 clamp(14px,.88vw,20px)/1.65 Georgia,serif;letter-spacing:.28em;text-transform:uppercase;}
.atmosphere-rule{display:block;width:18%;height:2px;margin:1.2vw auto;background:linear-gradient(90deg,#92703a,#f5d986,#92703a);}
.atmosphere-copy h2{margin:1.2vw -1vw 1.5vw;font:400 clamp(32px,4.3vw,94px)/1.05 Georgia,serif;letter-spacing:-.055em;white-space:nowrap;}
.atmosphere-copy h2 span{display:block;color:#dfc37b;font:400 clamp(44px,5.5vw,120px)/1.05 Allura,'Brush Script MT',cursive;letter-spacing:-.02em;}
.atmosphere-button{display:flex;align-items:center;justify-content:center;gap:1.2em;min-height:48px;padding:.65vw 1vw;margin:0 auto;width:80%;box-sizing:border-box;color:#0b0a08;background:linear-gradient(115deg,#f1d790,#c09b57 50%,#e5c781);border:2px solid #e1c47d;box-shadow:inset 0 0 0 2px #90733f;font:600 clamp(14px,1.25vw,28px)/1.3 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;transition:filter .2s;}
.atmosphere-button span{font-size:1.7em;font-weight:400;line-height:1;}.atmosphere-button:hover{filter:brightness(1.12);}.atmosphere-button:focus-visible{outline:3px solid white;outline-offset:5px;}
.atmosphere-tagline{margin:1.8vw -1.5vw 0;color:#dfc987;font:500 clamp(12px,.8vw,18px)/1.8 Georgia,serif;letter-spacing:.17em;text-transform:uppercase;}.atmosphere-tagline span{padding:0 .3em;}
@media(max-width:900px){.atmosphere-live{display:flex;flex-direction:column;}.atmosphere-copy{width:100%;padding:48px 24px 40px;order:0;}.atmosphere-photo{position:relative;inset:auto;width:100%;height:56vw;order:1;z-index:0;background-size:153.846% 100%;}.atmosphere-curve{width:100%;height:65%;opacity:.65;}.atmosphere-copy h2{font-size:clamp(32px,7vw,62px);margin:24px 0;white-space:normal;}.atmosphere-copy h2 span{font-size:clamp(48px,10vw,84px);}.atmosphere-rule{width:90px;margin:20px auto;}.atmosphere-button{max-width:390px;padding:10px 20px;font-size:16px;}.atmosphere-tagline{margin:28px 0 0;font-size:14px;letter-spacing:.12em;}.atmosphere-eyebrow{font-size:14px;}}

/* Reference banner proportions: 2048 × 615. Preserve live components. */
@media(min-width:901px){
.atmosphere-live{min-height:0;aspect-ratio:2048 / 615;}
.atmosphere-photo{background-size:153.846% auto;}
.atmosphere-copy{position:absolute;inset:0 auto 0 0;height:100%;padding:3.8vw 2.8vw 2.6vw;display:flex;flex-direction:column;justify-content:space-between;align-items:center;}
.atmosphere-copy h2{font-size:3.5vw;margin:.4vw -1vw 1vw;}
.atmosphere-copy h2 span{font-size:4.5vw;}
.atmosphere-copy .atmosphere-rule{flex-shrink:0;margin:.8vw auto;}
.atmosphere-button{width:83%;font-size:1.1vw;min-height:0;padding:.7vw 1vw;}
.atmosphere-eyebrow{font-size:.88vw;}
.atmosphere-tagline{font-size:.72vw;margin:1.4vw -1.5vw 0;white-space:nowrap;}
}

/* Centered gold-wave invitation. Typography and CTA are live HTML. */
.atmosphere-live.atmosphere-centered{aspect-ratio:2048 / 682;min-height:0;display:flex;align-items:center;justify-content:center;background:#080703 url('gallery-gold-waves.png') center/cover no-repeat;}
.atmosphere-centered .atmosphere-copy{position:relative;inset:auto;width:100%;height:auto;padding:5.4vw 20px 4.8vw;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.atmosphere-centered .atmosphere-eyebrow{font-size:clamp(14px,1.05vw,23px);line-height:1.6;letter-spacing:.25em;}
.atmosphere-centered .atmosphere-rule{width:7.4vw;margin:.8vw auto;height:2px;}
.atmosphere-centered .atmosphere-copy h2{font-size:4.35vw;line-height:1.05;letter-spacing:-.055em;margin:.25vw 0 1.3vw;}
.atmosphere-centered .atmosphere-copy h2 span{font-size:5.5vw;line-height:1;letter-spacing:-.025em;color:#e8c86f;text-shadow:0 0 15px #d7a33c35;}
.atmosphere-centered .atmosphere-button{width:29%;min-height:0;padding:.75vw 1vw;font-size:clamp(14px,1.25vw,28px);background:linear-gradient(105deg,#fff0a1,#cfa753 48%,#ffe28a);border-color:#f2d68c;box-shadow:inset 0 0 0 2px #aa8747,0 0 12px #d9ae4945;}
.atmosphere-centered .atmosphere-tagline{font-size:clamp(12px,.85vw,19px);margin:1.3vw 0 .1vw;letter-spacing:.15em;white-space:normal;}
@media(max-width:900px){.atmosphere-live.atmosphere-centered{aspect-ratio:auto;min-height:470px;background-position:center;}.atmosphere-centered .atmosphere-copy{padding:48px 20px;}.atmosphere-centered .atmosphere-copy h2{font-size:clamp(36px,7.5vw,64px);margin:14px 0 26px;}.atmosphere-centered .atmosphere-copy h2 span{font-size:clamp(48px,10vw,84px);}.atmosphere-centered .atmosphere-button{width:100%;max-width:390px;min-height:54px;padding:12px 18px;font-size:16px;}.atmosphere-centered .atmosphere-rule{width:90px;margin:16px auto;}.atmosphere-centered .atmosphere-tagline{font-size:14px;max-width:430px;margin:26px 0 0;}}

/* Compact 2048 × 342 reference; live central content, reference artwork at sides. */
.atmosphere-live.atmosphere-centered{background-size:100% 100%;}
.atmosphere-centered::before,.atmosphere-centered::after{content:"";position:absolute;top:0;bottom:0;width:37%;pointer-events:none;background-image:url('gallery-compact-reference.png');background-size:270.27027% 100%;background-repeat:no-repeat;}
.atmosphere-centered::before{left:0;background-position:left center;}.atmosphere-centered::after{right:0;background-position:right center;}
.atmosphere-centered .atmosphere-copy{z-index:1;}
@media(min-width:901px){
.atmosphere-live.atmosphere-centered{aspect-ratio:2048 / 342;}
.atmosphere-centered .atmosphere-copy{position:absolute;inset:0;width:100%;height:100%;padding:0;display:block;}
.atmosphere-centered .atmosphere-eyebrow{position:absolute;top:5.4%;left:30%;width:40%;font-size:.88vw;line-height:1.55;margin:0;}
.atmosphere-centered .atmosphere-rule{position:absolute;top:23.9%;left:46.85%;width:6.3%;margin:0;height:1px;}
.atmosphere-centered .atmosphere-copy h2{position:absolute;top:25.3%;left:30%;width:40%;margin:0;font-size:3.25vw;line-height:1.02;}
.atmosphere-centered .atmosphere-copy h2 span{font-size:4vw;line-height:.98;}
.atmosphere-centered .atmosphere-button{position:absolute;top:66%;left:38%;width:24%;height:15.6%;min-height:0;padding:0 .5vw;font-size:1vw;gap:1em;}
.atmosphere-centered .atmosphere-tagline{position:absolute;top:85.1%;left:30%;width:40%;font-size:.72vw;line-height:1.5;margin:0;white-space:nowrap;}
.atmosphere-centered .atmosphere-rule:last-child{top:95%;}
}
@media(max-width:900px){.atmosphere-centered::before,.atmosphere-centered::after{opacity:.5;width:22%;background-size:454.545% 100%;}.atmosphere-live.atmosphere-centered{min-height:420px;}.atmosphere-centered .atmosphere-copy{padding:32px 20px;}}

/* Gallery hero: live editorial copy and separate reference photography. */
.gallery-editorial{position:relative;isolation:isolate;aspect-ratio:2048 / 830;background:#0c0c0a;overflow:hidden;color:#f3f0e8;}
.gallery-editorial-art{position:absolute;inset:0 0 0 49%;background:url('gallery-hero-editorial.png') right center / 196.078431% 100% no-repeat;}
.gallery-editorial-copy{position:relative;width:49%;padding:11.2vw 3vw 6vw 6.6vw;box-sizing:border-box;z-index:1;}
.gallery-editorial-copy .kicker{margin:0 0 1.4vw;color:#b69b61;font:600 clamp(12px,.7vw,16px)/1.4 'DM Sans',sans-serif;letter-spacing:.23em;text-transform:uppercase;}
.gallery-editorial-copy h1{margin:0 0 1.8vw;font:600 6.5vw/.9 'DM Sans',sans-serif;letter-spacing:-.055em;}
.gallery-editorial-copy h1 em{display:inline-block;color:#b49a60;font-weight:500;line-height:1.05;}
.gallery-editorial-description{margin:0;max-width:33vw;color:#c8c5bd;font:400 clamp(14px,1.05vw,24px)/1.6 'DM Sans',sans-serif;}
@media(max-width:700px){.gallery-editorial{aspect-ratio:auto;display:flex;flex-direction:column;}.gallery-editorial-copy{width:100%;padding:48px 24px 24px;}.gallery-editorial-copy .kicker{font-size:12px;margin-bottom:24px;}.gallery-editorial-copy h1{font-size:clamp(52px,12vw,84px);margin-bottom:24px;}.gallery-editorial-description{max-width:100%;font-size:16px;}.gallery-editorial-art{position:relative;inset:auto;width:100%;height:82vw;background-size:196.078431% 100%;}}

/* Waterfront invitation with live text; center framing excludes asset padding. */
.atmosphere-live.atmosphere-centered{background-image:linear-gradient(90deg,transparent 32%,#0007 42%,#0007 58%,transparent 68%),url('gallery-waterfront-background.png');background-size:100% 100%,100% 200%;background-position:center;}
.atmosphere-centered::before,.atmosphere-centered::after{display:none;}
.atmosphere-centered .atmosphere-tagline{color:#f3eee3;}
@media(min-width:901px){
.atmosphere-centered .atmosphere-eyebrow{top:10.6%;}
.atmosphere-centered .atmosphere-rule{top:27.4%;}
.atmosphere-centered .atmosphere-copy h2{top:30%;font-size:3vw;}
.atmosphere-centered .atmosphere-copy h2 span{font-size:3.7vw;line-height:.87;}
.atmosphere-centered .atmosphere-button{top:66.2%;left:39.5%;width:21%;height:13.2%;font-size:.85vw;background:linear-gradient(105deg,#e8cb89,#d2b373,#efdbab);}
.atmosphere-centered .atmosphere-tagline{top:83%;font-size:.75vw;}
.atmosphere-centered .atmosphere-rule:last-child{top:91.7%;}
}
@media(max-width:900px){.atmosphere-live.atmosphere-centered{background-size:100% 100%,auto 200%;background-image:linear-gradient(#0009,#0009),url('gallery-waterfront-background.png');}}

/* Latest waterfront reference: original side photography and live center. */
.atmosphere-centered::before,.atmosphere-centered::after{display:block;background-image:url('gallery-waterfront-latest.png');width:37%;background-size:270.27027% 100%;opacity:1;}
.atmosphere-centered .atmosphere-eyebrow{color:#f7f4ed;}
.atmosphere-centered .atmosphere-copy h2 span{color:#f0dc9f;}
.atmosphere-centered .atmosphere-button{background:linear-gradient(105deg,#fff3c7,#e1c58d 48%,#f4dfae);border-color:#f2e2b9;box-shadow:inset 0 0 0 1px #937f52,0 3px 0 #c0ad78;}
.atmosphere-centered .atmosphere-rule:last-child{display:none;}
@media(min-width:901px){
.atmosphere-centered .atmosphere-eyebrow{top:8.5%;}
.atmosphere-centered .atmosphere-rule{top:27.2%;}
.atmosphere-centered .atmosphere-copy h2{top:30%;}
.atmosphere-centered .atmosphere-button{top:67.5%;left:38.9%;width:21.7%;height:14.2%;}
.atmosphere-centered .atmosphere-tagline{top:85.8%;}
}
@media(max-width:900px){.atmosphere-centered::before,.atmosphere-centered::after{width:22%;background-size:454.545% 100%;opacity:.55;}}

/* Exact approved artwork with a keyboard-accessible booking hotspot. */
.gallery-exact-invitation{position:relative;padding:0;margin:0;line-height:0;background:#0b0b0a;}
.gallery-exact-invitation>img{display:block;width:100%;height:auto;}
.gallery-exact-invitation>a{position:absolute;left:38.85%;top:67.25%;width:21.8%;height:15%;display:block;}
.gallery-exact-invitation>a:focus-visible{outline:3px solid white;outline-offset:3px;}
@media(max-width:700px){.gallery-exact-invitation>a{left:35%;width:30%;top:58%;height:36%;min-height:24px;}}

/* Real booking CTA, aligned with the approved artwork. */
.gallery-exact-invitation>a.gallery-date-button{left:38.85%;top:67.25%;width:21.8%;height:15%;min-height:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:1.1em;padding:0 .5%;border:2px solid #eddfb0;background:linear-gradient(105deg,#fff1c8,#e2c58d 48%,#f3dfb0);box-shadow:inset 0 0 0 1px #9b8557;color:#090908;font:600 clamp(9px,.87vw,24px)/1 'DM Sans',sans-serif;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:filter .18s,box-shadow .18s,transform .12s;}
.gallery-date-button .gallery-date-arrow{font-size:1.5em;line-height:1;transition:transform .18s;}
.gallery-exact-invitation>a.gallery-date-button:hover{filter:brightness(1.12);box-shadow:inset 0 0 0 1px #9b8557,0 0 16px #f3d99080;}
.gallery-date-button:hover .gallery-date-arrow{transform:translateX(3px);}
.gallery-exact-invitation>a.gallery-date-button:active{filter:brightness(.93);transform:scale(.985);}
.gallery-exact-invitation>a.gallery-date-button:focus-visible{outline:3px solid #fff;outline-offset:4px;}
@media(max-width:700px){.gallery-exact-invitation>a.gallery-date-button{left:38.85%;top:67.25%;width:21.8%;height:15%;font-size:clamp(4px,.87vw,9px);gap:.65em;border-width:1px;}}
@media(prefers-reduced-motion:reduce){.gallery-exact-invitation>a.gallery-date-button,.gallery-date-button .gallery-date-arrow{transition:none;}}

/* Supplied portrait fitted into the existing editorial frame. */
.hero-main-frame .hero-main-image{position:absolute;left:22%;top:0;width:78%;height:100%;object-fit:cover;object-position:center top;}
.hero-portrait-caption{position:absolute;right:0;top:66%;width:36%;padding:8% 3% 9%;background:none;text-align:center;color:var(--gold);}
.hero-portrait-caption em{display:block;font-family:"Passions Conflict","Snell Roundhand",cursive;font-style:normal;font-size:clamp(20px,3vw,60px);font-weight:400;}
.hero-portrait-caption small{display:block;font-size:clamp(5px,.42vw,9px);letter-spacing:.2em;color:var(--paper);margin-top:8px;}
@media(max-width:1100px){.hero-main-frame .hero-main-image{left:0;width:100%;}.hero-portrait-caption em{font-size:clamp(28px,5vw,54px);}}

/* Restore the exact original handwritten Miami artwork. */
.hero-detail-image{object-fit:cover;filter:saturate(.38) sepia(.24) brightness(.74) contrast(.94);}

/* Transparent live lettering over the current portrait. */
.hero-portrait-caption{background:none;padding:3% 2%;top:68%;width:36%;}
.hero-portrait-caption em{font-size:clamp(32px,4.5vw,90px);line-height:1;transform:rotate(-10deg);color:#d8bb75;}
.hero-portrait-caption small{margin-top:12%;}
.hero-portrait-caption i{display:block;width:45%;height:1px;background:var(--gold);margin:14% auto 0;}
@media(max-width:1100px){.hero-portrait-caption em{font-size:clamp(36px,7vw,72px);}}

.hero-miami-lettering{position:absolute;right:0;top:65.2%;width:36.28%;height:auto;pointer-events:none;}

/* Looping video stays inside the original waterfront picture frame. */
video.hero-miami-image{aspect-ratio:204/424;object-fit:cover;object-position:center;}

.occasion-art video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04);transition:transform .8s cubic-bezier(.2,.7,.2,1);}
.occasion:hover .occasion-art video{transform:scale(1.035);}

/* FAQ composition measured against the supplied 1782 x 884 reference. */
.faq{position:relative;display:grid;grid-template-columns:41.47% 53.2%;column-gap:0;align-items:start;padding:0;min-height:49.61vw;background:#0d0c0b;isolation:isolate;}
.faq-portrait{position:relative;top:auto;height:49.61vw;overflow:hidden;background:linear-gradient(to right,transparent 80%,#0d0c0b 100%),url("faq-black-curtain.png") center center/cover no-repeat;}
.faq-portrait::after{display:none;}
.faq-singer{position:absolute;top:-.4vw;left:10.38vw;bottom:auto;width:28.5vw;height:auto;max-width:none;object-fit:contain;}
.faq .faq-heading{position:absolute;z-index:2;left:5.8vw;top:3.85vw;}
.faq .faq-heading .kicker{font-family:"DM Sans",sans-serif;font-size:clamp(10px,.62vw,12px);font-weight:400;line-height:1.2;letter-spacing:.22em;color:#cbaa70;margin:0 0 1.22vw;}
.faq .faq-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:2.8vw;font-weight:400;line-height:1.02;letter-spacing:-.025em;margin:0;color:#f7f3eb;}
.faq .faq-heading h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:#d5ac6b;}
.faq-heading-rule{display:block;background:#cfa463;width:2.7vw;height:1px;margin-top:1.5vw;}
.faq .faq-list{position:relative;z-index:2;margin:3.65vw 0 2.7vw;border-top:1px solid #716247;min-width:0;}
.faq details{border-bottom:1px solid #716247;padding:0;}
.faq summary{font-family:Georgia,"Times New Roman",serif;font-size:clamp(16px,1.01vw,20px);font-weight:400;line-height:1.2;color:#f3efe7;padding:.775vw 0;gap:20px;min-height:2.75vw;}
.faq summary span{font-size:0;flex:0 0 18px;transform:none;text-align:center;}
.faq summary span::after{content:"+";font:300 22px/1 Arial,sans-serif;color:#d1ae73;}
.faq details[open] summary span{transform:none;}
.faq details[open] summary span::after{content:"−";}
.faq .faq-answer{font-family:"DM Sans",sans-serif;font-size:clamp(14px,.79vw,16px);line-height:1.5;color:#c5c3bd;max-width:40vw;padding:0 0 1.1vw;}
.faq details:first-child .faq-answer{max-width:32vw;}
.faq summary:focus-visible{outline:2px solid #d3ad6c;outline-offset:4px;}
@media(min-width:701px) and (max-width:1100px){.faq summary{padding:12px 0;}.faq .faq-answer{font-size:14px;}.faq details:first-child .faq-answer{max-width:none;}.faq .faq-heading h2{font-size:34px;}.faq{background-size:auto 680px;}.faq-portrait{height:680px;}.faq-singer{width:390px;left:calc(41.47vw - 380px);top:0;}.faq .faq-heading{left:4vw;}}
@media(max-width:700px){.faq{display:block;min-height:0;background-size:auto 540px;background-position:left top;}.faq-portrait{height:540px;max-height:140vw;}.faq-singer{width:320px;max-width:83vw;left:24vw;top:0;}.faq .faq-heading{left:7vw;top:9vw;}.faq .faq-heading .kicker{font-size:10px;margin-bottom:18px;}.faq .faq-heading h2{font-size:clamp(32px,8vw,46px);}.faq-heading-rule{width:40px;margin-top:22px;}.faq .faq-list{margin:0 22px 0;padding:0 0 40px;}.faq summary{font-size:17px;padding:18px 0;line-height:1.4;}.faq .faq-answer,.faq details:first-child .faq-answer{max-width:none;font-size:16px;line-height:1.65;padding:0 10px 22px 0;}}

/* Larger reference typography with independently scrollable questions. */
.faq{height:49.61vw;min-height:0;overflow:hidden;}
.faq .faq-heading h2{font-size:2.75vw;line-height:1.04;}
.faq .faq-heading .kicker{font-size:clamp(12px,.8vw,16px);}
.faq .faq-list{height:43.26vw;max-height:43.26vw;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;padding-right:18px;scrollbar-width:thin;scrollbar-color:#b99c65 #181611;scroll-padding-block:20px;}
.faq .faq-list::-webkit-scrollbar{width:7px;}
.faq .faq-list::-webkit-scrollbar-track{background:#181611;}
.faq .faq-list::-webkit-scrollbar-thumb{background:#b99c65;border-radius:8px;}
.faq .faq-list:focus-visible{outline:1px solid #b99c65;outline-offset:6px;}
.faq summary{font-size:clamp(21px,1.45vw,29px);line-height:1.35;padding:22px 0;}
.faq summary span::after{font-size:26px;}
.faq .faq-answer,.faq details:first-child .faq-answer{font-size:clamp(17px,1.1vw,22px);line-height:1.65;max-width:90%;padding-bottom:26px;}
@media(min-width:701px) and (max-width:1100px){.faq{height:680px;}.faq .faq-list{height:calc(680px - 6.35vw);max-height:none;}.faq .faq-heading h2{font-size:clamp(30px,3.2vw,36px);}.faq summary{font-size:21px;padding:19px 0;}.faq .faq-answer,.faq details:first-child .faq-answer{font-size:17px;max-width:100%;}}
@media(max-width:700px){.faq{height:auto;overflow:visible;padding-bottom:30px;}.faq .faq-heading h2{font-size:clamp(32px,8vw,43px);}.faq .faq-heading .kicker{font-size:12px;}.faq .faq-list{height:65svh;max-height:650px;min-height:320px;margin:0 22px;padding:0 12px 15px 0;}.faq summary{font-size:21px;padding:20px 0;}.faq .faq-answer,.faq details:first-child .faq-answer{font-size:17px;max-width:100%;}}

/* Equal video frames: longer copy cannot shrink the second or third video. */
.occasions .occasion-art{flex:0 0 380px;height:380px;min-height:380px;}
.occasions .occasion-copy{flex:1;}
@media(max-width:900px){.occasions .occasion-art{flex:0 0 auto;height:auto;min-height:0;aspect-ratio:1.26;}}

/* Keep specialty copy as live components over the replacement photograph. */
@media(min-width:761px){
.specialty-show{color:#f4efe6;}
.specialty-show::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 38%,rgba(8,8,8,.5) 55%,rgba(8,8,8,.88) 100%);pointer-events:none;}
.specialty-show-mobile{display:flex;position:absolute;z-index:1;left:58.7%;right:5%;top:15.8%;line-height:normal;flex-direction:column;align-items:flex-start;}
.specialty-show-mobile>p{margin:0 0 1.1vw;font-family:"Playfair Display",serif;font-size:.95vw;letter-spacing:.35em;}
.specialty-show-mobile h2{font-family:"Playfair Display",serif;font-weight:400;font-size:3.15vw;line-height:1.1;margin:0;}
.specialty-show-mobile>span{font-size:.7vw;letter-spacing:.17em;margin:1.3vw 0;line-height:1.5;}
.specialty-show-mobile>strong{font-family:"Playfair Display",serif;font-size:3.55vw;color:#c5a15f;font-weight:400;line-height:1;margin-bottom:1.35vw;}
.specialty-show-mobile .btn{min-height:0;height:3.3vw;width:25.2vw;padding:0 1.5vw;font-size:.75vw;letter-spacing:.18em;background:rgba(10,10,10,.6);border:1px solid #c5a15f;color:#f4efe6;justify-content:space-between;}
.specialty-show-mobile small{font-size:.52vw;letter-spacing:.23em;color:#c5a15f;text-transform:uppercase;margin-top:1.8vw;}
}

/* Supplied Standard design: preserve exact desktop composition. */
.standard-design-desktop{display:block;width:100%;height:auto;}
@media(min-width:1001px){#standard .included-intro,#standard .included-grid{display:none;}}
@media(max-width:1000px){.standard-design-desktop{display:none;}#standard .included-intro::before{background-image:url('standard-flute-oct6.png');background-size:auto 171%;background-position:right top;}}

/* About Lyzz: supplied artwork and original subject, October 6. */
#about.about-reference{display:block;padding:0;min-height:0;background:#f5f0e5;}
#about.about-reference::before,#about.about-reference::after{display:none;}
.about-exact-desktop{position:relative;width:100%;}
.about-exact-desktop>img{display:block;width:100%;height:auto;}
.about-image-inquiry{position:absolute;left:65.95%;top:86.7%;width:27.05%;height:6.1%;display:block;}
.about-image-inquiry:hover{background:rgba(220,189,121,.12);}
.about-image-inquiry:focus-visible{outline:3px solid #fff;outline-offset:3px;}
.about-mobile-portrait{display:none;}
@media(min-width:1001px){
 #about.about-reference>.about-copy,#about.about-reference>.about-card{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;}
 #about.about-reference>.about-card .about-inquiry{display:none;}
}
@media(max-width:1000px){
 #about.about-reference{display:flex;flex-direction:column;gap:28px;padding:44px 24px;color:#171512;}
 .about-exact-desktop{display:none;}
 .about-mobile-portrait{display:block;order:1;width:100%;max-width:560px;height:440px;object-fit:cover;object-position:center 28%;border:1px solid #b79b65;}
 #about .about-copy{order:0;}
 #about.about-reference h2{font-size:clamp(42px,6vw,72px);}
 #about.about-reference .about-copy>p:not(.kicker){color:#39352f;font-size:17px;line-height:1.75;}
 #about.about-reference .about-card{order:2;margin:0;width:100%;background:#11100e;color:#f7f2e7;border:1px solid #b79b65;padding:30px 24px;}
 #about.about-reference .about-lines p{color:#e2d9c7;}
 #about.about-reference .about-inquiry{color:#d5bd87;}
}

/* Original portrait fitted into the vertical inset, preserving its frame. */
.about-exact-desktop>img.about-vertical-portrait{position:absolute;left:45.66%;top:40.02%;width:16.12%;height:44.87%;object-fit:cover;object-position:center;}

/* Replace the horizontal Miami event photograph with the supplied orchestra photo. */
.about-exact-desktop>img.about-orchestra-photo{position:absolute;left:48.48%;top:3.04%;width:49.44%;height:53.55%;object-fit:cover;object-position:center;}
.about-exact-desktop>img.about-vertical-portrait{z-index:1;}

/* Black and gold About Lyzz editorial layout. */
.lyzz-profile{display:grid;grid-template-columns:34% 31% 35%;background:#090909;color:#f6f1e6;overflow:hidden;position:relative;isolation:isolate;}
.lyzz-profile-portrait{position:relative;min-height:100%;}
.lyzz-profile-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:46% center;}
.lyzz-profile-portrait::after{content:"";position:absolute;inset:4% 8% 12%;border:2px solid #c5a563;pointer-events:none;transform:rotate(2deg);}
.lyzz-profile-copy{padding:5.8vw 1.7vw 4.5vw 1.4vw;position:relative;background:radial-gradient(ellipse at top,#19171066,transparent 70%);}
.lyzz-profile-kicker{display:flex;align-items:center;gap:16px;color:#d4ae61;font:500 clamp(11px,1vw,17px)/1.4 Arial,sans-serif;letter-spacing:.28em;margin:0 0 24px;}
.lyzz-profile-kicker::after{content:"";height:1px;background:#9f8248;flex:1;}
.lyzz-profile h2{font-family:"Bodoni Moda",Didot,"Bodoni MT",serif;font-optical-sizing:none;font-size:clamp(44px,5.7vw,104px);line-height:.95;letter-spacing:-.055em;font-weight:400;margin:0 0 30px;}
.lyzz-profile h2 em{color:#d6ae5e;font-weight:400;font-size:1.14em;line-height:.83;}
.lyzz-profile-copy>p:not(.lyzz-profile-kicker){font-family:Georgia,serif;font-size:clamp(16px,1.28vw,23px);line-height:1.42;margin:0 0 28px;color:#e2ded5;}
.lyzz-profile-motto{font:500 clamp(8px,.65vw,12px)/1.6 Arial,sans-serif;letter-spacing:.3em;color:#d7b975;margin-top:34px;}
.lyzz-profile-details{padding:5.9vw 2vw 4.7vw 0;display:flex;flex-direction:column;justify-content:center;gap:2vw;}
.lyzz-profile-orchestra{display:block;width:100%;height:auto;border:2px solid #c8a457;padding:3px;}
.lyzz-profile-card{border:1px solid #d5ad58;padding:2vw 2.8vw;background:linear-gradient(145deg,#141310,#080808);}
.lyzz-profile-card .lyzz-profile-kicker{font-size:clamp(10px,.8vw,15px);margin:0 0 18px;}
.lyzz-profile-card h3{font:400 clamp(25px,2.65vw,48px)/1.05 Georgia,serif;letter-spacing:-.035em;margin:0 0 24px;}
.lyzz-profile-card ul{display:grid;grid-template-columns:1fr 1fr;gap:0 22px;list-style:none;padding:0;margin:0 0 23px;}
.lyzz-profile-card li{font:400 clamp(12px,.94vw,17px)/1.4 Arial,sans-serif;border-bottom:1px solid #777263;padding:9px 0;color:#e5dfd3;}
.lyzz-profile-card>a{display:flex;align-items:center;justify-content:center;gap:14px;padding:15px 8px;border:1px solid #d2b16c;color:#dfbd70;font:500 clamp(10px,.83vw,15px)/1.5 Arial,sans-serif;letter-spacing:.14em;text-align:center;text-decoration:none;}
.lyzz-profile-card>a:hover{background:#d2b16c;color:#090909;}
.lyzz-profile-card>a:focus-visible{outline:2px solid #fff;outline-offset:4px;}
@media(max-width:1000px){.lyzz-profile{grid-template-columns:42% 58%;}.lyzz-profile-copy{padding:45px 30px;}.lyzz-profile h2{font-size:clamp(48px,7vw,76px);}.lyzz-profile-details{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:0 28px 40px;gap:25px;}.lyzz-profile-card{padding:26px;}.lyzz-profile-card li{font-size:14px;}.lyzz-profile-card h3{font-size:30px;}}
@media(max-width:600px){.lyzz-profile{display:flex;flex-direction:column;}.lyzz-profile-portrait{height:520px;min-height:0;}.lyzz-profile-portrait img{object-position:center 25%;}.lyzz-profile-copy{padding:35px 24px 24px;}.lyzz-profile h2{font-size:60px;}.lyzz-profile-copy>p:not(.lyzz-profile-kicker){font-size:18px;line-height:1.55;}.lyzz-profile-details{display:flex;padding:0 24px 40px;gap:26px;}.lyzz-profile-card{width:100%;padding:26px 22px;}.lyzz-profile-card>a{font-size:11px;}.lyzz-profile-kicker{font-size:12px;}.lyzz-profile-motto{font-size:10px;}}

/* Fit the full About heading to its own text column at every viewport. */
.lyzz-profile-copy{min-width:0;container-type:inline-size;}
.lyzz-profile .lyzz-profile-copy h2{font-size:min(104px,17cqi);}

/* One-screen desktop About composition, below the fixed navigation. */
@media(min-width:1001px){
  .lyzz-profile{--about-nav-height:4.19vw;height:calc(100svh - var(--about-nav-height));grid-template-rows:minmax(0,1fr);scroll-margin-top:var(--about-nav-height);}
  .lyzz-profile-portrait{min-height:0;height:100%;}
  .lyzz-profile-copy{padding:2.5svh 1.7vw 2.5svh 1.4vw;align-self:stretch;height:100%;min-height:0;display:flex;flex-direction:column;justify-content:center;}
  .lyzz-profile-copy>*{flex-shrink:0;}
  .lyzz-profile-copy>.lyzz-profile-kicker{margin-bottom:1.8svh;font-size:min(15px,1.6svh);}
  .lyzz-profile .lyzz-profile-copy h2{font-size:min(17cqi,6.7svh);margin-bottom:2svh;}
  .lyzz-profile-copy>p:not(.lyzz-profile-kicker){font-size:min(18px,2svh);line-height:1.32;margin-bottom:1.8svh;}
  .lyzz-profile-motto{margin-top:2svh;font-size:min(10px,1.15svh);}
  .lyzz-profile-details{min-height:0;padding:2.5svh 2vw 2.5svh 0;gap:2svh;}
  .lyzz-profile-orchestra{height:auto;max-height:25svh;min-height:0;object-fit:cover;object-position:center;background:#090909;}
  .lyzz-profile-card{padding:2svh 1.8vw;}
  .lyzz-profile-card .lyzz-profile-kicker{margin-bottom:1.4svh;font-size:min(13px,1.5svh);}
  .lyzz-profile-card h3{font-size:min(2.65vw,3.7svh);margin-bottom:1.8svh;}
  .lyzz-profile-card ul{margin-bottom:1.8svh;}
  .lyzz-profile-card li{font-size:min(16px,1.8svh);padding:1svh 0;}
  .lyzz-profile-card>a{font-size:min(13px,1.5svh);padding:1.5svh 8px;}
}

/* Desktop reference: lower the unchanged FAQ portrait beneath the title. */
@media(min-width:1101px){.faq-singer{top:.6vw;}}

/* Remove the logo's dark rectangular backing without redrawing the artwork. */
.brand-logo{mix-blend-mode:normal;background:transparent;}

/* Ivory booking card with black text and champagne-gold dividers. */
.lyzz-profile-card{background:#f3eee7;color:#111;}
.lyzz-profile-card .lyzz-profile-kicker,.lyzz-profile-card h3,.lyzz-profile-card li{color:#111;}
.lyzz-profile-card .lyzz-profile-kicker::after,.lyzz-profile-card li{border-color:#b79a63;}
.lyzz-profile-card .lyzz-profile-kicker::after{background:#b79a63;}
.lyzz-profile-card>a{background:linear-gradient(145deg,#141310,#080808);}
.lyzz-profile-card>a:hover{background:#d2b16c;color:#090909;}

/* At narrow desktop widths, include the second navigation row. */
@media(min-width:1001px) and (max-width:1100px){.lyzz-profile{--about-nav-height:131px;}}

/* Mobile crop centers the flute keywork rather than the headjoint. */
@media(max-width:600px){#standard .included-intro::before{background-position:70% top;}}

/* About gold sampled from the supplied typography reference. */
.lyzz-profile{--about-gold:#b79c67;}
.lyzz-profile-copy>.lyzz-profile-kicker,.lyzz-profile h2 em,.lyzz-profile-motto,.lyzz-profile-card>a{color:var(--about-gold);}
.lyzz-profile-portrait::after,.lyzz-profile-orchestra,.lyzz-profile-card,.lyzz-profile-card li,.lyzz-profile-card>a{border-color:var(--about-gold);}
.lyzz-profile-kicker::after,.lyzz-profile-card .lyzz-profile-kicker::after{background:var(--about-gold);}
.lyzz-profile-card>a:hover{background:var(--about-gold);color:#090909;}

/* Independent foreground layer; original portrait is unchanged. */
.lyzz-profile-portrait{overflow:hidden;isolation:isolate;}
.lyzz-profile-portrait::before{content:"";position:absolute;left:0;bottom:0;width:65%;height:65%;background:url("about-foreground-flowers.png") left bottom/100% 100% no-repeat;z-index:2;pointer-events:none;filter:saturate(.82) brightness(.91);}
.lyzz-profile-portrait::after{z-index:3;}

/* Genuine client feedback: independent, responsive review section. */
.client-impressions{display:grid;grid-template-columns:1.05fr 1fr;gap:6vw;padding:90px 7vw;background:#11110f;color:#f4efe6;border-top:1px solid #b79c6740;border-bottom:1px solid #b79c6740;}
.impressions-intro{align-self:center;min-width:0;}
.client-impressions .kicker,.impressions-label{color:#b79c67;font-size:11px;letter-spacing:.2em;line-height:1.6;}
.client-impressions h2{font-family:"Playfair Display",serif;font-size:clamp(34px,3.6vw,58px);font-weight:500;line-height:1.15;letter-spacing:-.025em;margin:20px 0 26px;}
.client-impressions h2 em,.client-impressions h3 em{color:#b79c67;font-weight:400;}
.impressions-intro>p:not(.kicker){max-width:550px;color:#bbb5aa;font-size:16px;line-height:1.75;}
.impressions-intro .impressions-lead{color:#f4efe6!important;font-size:19px!important;}
.impressions-book{margin-top:20px;gap:26px;}
.impressions-panel{position:relative;min-width:0;padding:40px 42px;border:1px solid #b79c6770;background:linear-gradient(130deg,#29261f,#171714);}
.impressions-quote{display:block;font-family:Georgia,serif;color:#b79c67;font-size:88px;line-height:.8;margin-bottom:10px;}
.impressions-panel h3{font-family:"Playfair Display",serif;font-size:clamp(30px,3vw,46px);font-weight:400;line-height:1.2;margin:22px 0;}
.impressions-panel>p:not(.impressions-label){font-size:16px;line-height:1.7;color:#c4beb3;}
.impressions-share{display:flex;align-items:center;justify-content:space-between;gap:20px;color:#d1ba88;border-top:1px solid #b79c6750;border-bottom:1px solid #b79c6750;padding:20px 0;margin-top:28px;font-size:15px;}
.impressions-share:hover{color:#f4efe6;}
.impressions-share:focus-visible,.impressions-book:focus-visible{outline:2px solid #d1ba88;outline-offset:6px;}
.impressions-panel .impressions-note{font-size:12px!important;color:#aaa292!important;margin:20px 0 0;}
@media(max-width:850px){.client-impressions{grid-template-columns:1fr;padding:64px 6vw;gap:36px;}.client-impressions h2{font-size:clamp(34px,6vw,50px);}.impressions-panel{padding:30px;}.impressions-book{max-width:100%;}}
@media(max-width:450px){.client-impressions{padding:48px 24px;}.client-impressions h2{font-size:34px;}.impressions-panel{padding:26px 22px;}.impressions-panel h3{font-size:32px;}.impressions-book{font-size:12px;}}

/* Review submission and approved client media. */
button.impressions-share{width:100%;background:transparent;border-left:0;border-right:0;text-align:left;cursor:pointer;font-family:inherit;}
.published-reviews{padding:70px 7vw 90px;background:#f4efe6;color:#181713;}
.reviews-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:30px;}
.published-reviews .kicker{color:#897144;}
.published-reviews h2,.review-dialog h2{font-family:"Playfair Display",serif;font-size:clamp(32px,4vw,56px);font-weight:500;line-height:1.15;margin:16px 0;letter-spacing:-.025em;}
.published-reviews h2 em,.review-dialog h2 em{color:#9e824b;}
.review-outline{border:1px solid #b79c67;background:transparent;padding:14px 20px;color:inherit;font:500 14px "DM Sans",sans-serif;cursor:pointer;}
.review-outline:hover{background:#b79c671a;}
.review-outline:focus-visible,.review-close:focus-visible{outline:2px solid #b79c67;outline-offset:4px;}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.client-review-card{border:1px solid #b79c6750;background:#fffcf6;padding:28px;min-width:0;}
.client-review-card h3{font:500 24px "Playfair Display",serif;margin:20px 0 6px;overflow-wrap:anywhere;}
.client-review-card .review-event{font-size:12px;color:#766c5b;margin:0 0 20px;}
.review-stars{color:#96743d;letter-spacing:.15em;}
.review-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:1.75;}
.client-review-media{display:grid;gap:12px;margin-top:24px;}
.client-review-media img,.client-review-media video{width:100%;max-height:320px;object-fit:contain;display:block;background:#181713;}
.reviews-status{font-size:16px;line-height:1.6;color:#766c5b;}
#moreReviews{margin-top:28px;}
.review-dialog{width:min(760px,calc(100vw - 32px));max-height:90dvh;overflow:auto;border:1px solid #b79c67;background:#f4efe6;color:#181713;padding:40px;}
.review-dialog::backdrop{background:#000b;backdrop-filter:blur(5px);}
.review-close{position:absolute;top:12px;right:16px;border:0;background:transparent;font-size:32px;cursor:pointer;color:#181713;}
.review-dialog .kicker{font-size:11px;letter-spacing:.18em;color:#897144;}
.review-dialog-intro,.review-dialog p{font-size:15px;line-height:1.65;}
.review-form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
#reviewForm label:not(.review-consent){display:block;font-size:11px;font-weight:600;letter-spacing:.1em;margin-top:18px;}
#reviewForm input:not([type="checkbox"]),#reviewForm select,#reviewForm textarea{display:block;width:100%;min-width:0;border:1px solid #b79c6780;background:#fffcf6;color:#181713;font:16px "DM Sans",sans-serif;padding:13px;margin-top:8px;letter-spacing:normal;}
#reviewForm textarea{resize:vertical;}
#reviewForm input:focus,#reviewForm select:focus,#reviewForm textarea:focus{outline:2px solid #b79c67;outline-offset:2px;}
#reviewForm .upload-help{font-size:12px;color:#766c5b;margin:12px 0;}
.review-consent{display:flex;align-items:flex-start;gap:12px;margin:18px 0;font-size:14px;line-height:1.6;}
.review-consent input{flex:0 0 auto;width:18px;height:18px;margin-top:3px;accent-color:#9e824b;}
#reviewForm .review-honey{display:none!important;}
.review-submit{width:100%;justify-content:space-between;margin-top:10px;}
.review-submit:disabled{opacity:.6;cursor:wait;}
.review-previews{display:flex;gap:10px;flex-wrap:wrap;}
.review-previews img,.review-previews video{width:100px;height:100px;object-fit:cover;background:#181713;}
.review-form-error{color:#922c27;}
#externalReviewLinks{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0;}
#externalReviewLinks a{border:1px solid #b79c67;padding:14px 18px;font-size:14px;}
@media(max-width:900px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.reviews-heading{align-items:flex-start;flex-direction:column;}}
@media(max-width:600px){.published-reviews{padding:48px 24px;}.reviews-grid{grid-template-columns:1fr;}.review-dialog{padding:32px 22px;}.review-form-row{grid-template-columns:1fr;gap:0;}.client-review-card{padding:24px;}.review-dialog h2{font-size:36px;}}


/* Live testimonials components. */
.testimonials-components{--testimonial-gold:#b79c67;display:grid;grid-template-columns:.75fr 1fr;gap:4vw;padding:5.4vw 5.8vw 6.8vw;color:#f4efe6;background:radial-gradient(ellipse at 20% 45%,#21212180,transparent 65%),#191919;}
.testimonials-intro{min-width:0;align-self:center;}
.testimonials-eyebrow{display:flex;align-items:center;gap:26px;color:var(--testimonial-gold);font-size:clamp(10px,.95vw,15px);letter-spacing:.16em;line-height:1.6;}
.testimonials-eyebrow span{flex:1;height:1px;background:#b79c6760;}
.testimonials-components h2{font-family:"Bodoni Moda",serif;font-size:clamp(32px,4.2vw,72px);font-weight:400;line-height:1.12;letter-spacing:-.025em;margin:28px 0 38px;}
.testimonials-components em{color:var(--testimonial-gold);font-weight:400;}
.testimonials-description{font-size:clamp(16px,1.35vw,23px);line-height:1.75;max-width:600px;margin:0 0 50px;}
.testimonials-invitation{border:1px solid var(--testimonial-gold);padding:22px 2.3vw;}
.testimonials-share{display:grid;grid-template-columns:58px 1fr 22px;gap:22px;align-items:start;width:100%;padding:12px 0 28px;background:transparent;border:0;color:var(--testimonial-gold);text-align:left;cursor:pointer;font-family:inherit;}
.testimonials-share strong{display:block;font:400 clamp(22px,1.7vw,30px)/1.25 "Bodoni Moda",serif;}
.testimonials-share-description{display:block;color:#ded8ce;font-size:clamp(13px,.96vw,16px);line-height:1.65;margin-top:14px;}
.testimonials-pen{width:58px;height:58px;display:grid;place-items:center;border:1px solid var(--testimonial-gold);border-radius:50%;}
.testimonials-pen svg{width:32px;height:32px;}
.testimonials-arrow{font-size:25px;line-height:1;}
.testimonials-share:hover strong{color:#dfcdab;}
.testimonials-share:focus-visible,.testimonial-controls button:focus-visible{outline:2px solid var(--testimonial-gold);outline-offset:6px;}
.testimonials-permission{display:flex;align-items:center;gap:22px;border-top:1px solid #b79c6770;padding-top:24px;margin:0;color:#ccc4b5;font-size:clamp(9px,.73vw,12px);letter-spacing:.15em;line-height:1.7;}
.testimonials-permission svg{width:24px;height:24px;flex:0 0 auto;color:var(--testimonial-gold);}
.testimonial-feature{position:relative;isolation:isolate;overflow:hidden;border:1px solid var(--testimonial-gold);padding:3.2vw 3.9vw;min-height:640px;display:flex;flex-direction:column;background:#111;}
.testimonial-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;z-index:-2;}
.testimonial-feature:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101010e8,#10101075 65%,#10101020);z-index:-1;}
.testimonial-quote-mark{display:block;color:var(--testimonial-gold);font:160px/.75 Georgia,serif;}
.testimonial-feature h3{font:400 clamp(32px,3.65vw,62px)/1.12 "Bodoni Moda",serif;letter-spacing:-.02em;margin:28px 0 26px;overflow-wrap:anywhere;}
.testimonial-feature h3.testimonial-live-title{font-size:clamp(28px,2.7vw,46px);}
.testimonial-feature #featuredReviewText{font-size:clamp(16px,1.23vw,21px);line-height:1.6;max-width:560px;white-space:pre-line;overflow-wrap:anywhere;}
.testimonial-attribution{margin-top:32px;display:grid;gap:8px;font-size:12px;letter-spacing:.26em;}
.testimonial-attribution:before{content:"";width:110px;height:1px;background:var(--testimonial-gold);margin-bottom:14px;}
#featuredReviewName{color:var(--testimonial-gold);}
#featuredReviewEvent{color:#d4cfc4;line-height:1.6;}
.testimonial-controls{display:flex;align-items:center;gap:38px;margin-top:auto;padding-top:38px;color:var(--testimonial-gold);}
.testimonial-controls[hidden]{display:none;}
.testimonial-controls button{border:0;background:none;color:inherit;font:300 38px/1 Georgia,serif;cursor:pointer;padding:8px;}
.testimonial-controls button:disabled{opacity:.35;cursor:default;}
#testimonialCount{font-size:12px;letter-spacing:.3em;}
@media(max-width:1000px){.testimonials-components{grid-template-columns:1fr;padding:60px 6vw;gap:40px;}.testimonials-components h2{font-size:clamp(38px,6.5vw,64px);}.testimonials-description{margin-bottom:30px;}.testimonials-invitation{padding:22px 28px;}.testimonial-feature{padding:40px;min-height:560px;}.testimonial-feature h3{font-size:clamp(36px,6vw,56px);}.testimonial-feature h3.testimonial-live-title{font-size:clamp(30px,5vw,46px);}}
@media(max-width:500px){.testimonials-components{padding:46px 24px;gap:30px;}.testimonials-eyebrow{font-size:10px;gap:12px;letter-spacing:.12em;}.testimonials-components h2{font-size:38px;margin:24px 0;}.testimonials-invitation{padding:18px;}.testimonials-share{grid-template-columns:42px 1fr 16px;gap:12px;}.testimonials-pen{width:42px;height:42px;}.testimonials-pen svg{width:26px;height:26px;}.testimonials-share strong{font-size:23px;}.testimonials-permission{gap:14px;letter-spacing:.1em;font-size:9px;}.testimonial-feature{padding:28px 24px;min-height:540px;}.testimonial-feature h3{font-size:38px;}.testimonial-quote-mark{font-size:115px;}.testimonial-attribution{letter-spacing:.2em;}.testimonial-controls{gap:26px;}}

.review-upload-item{position:relative;display:grid;gap:8px;width:132px;padding:10px;border:1px solid #b79c6750;background:#f7f3eb;}
.review-upload-item img,.review-upload-item video{width:110px;height:90px;object-fit:cover;}
.review-upload-name{font-size:11px;line-height:1.4;overflow-wrap:anywhere;color:#514737;}
.review-upload-remove{border:1px solid #b79c67;background:transparent;color:#514737;font:inherit;font-size:12px;padding:6px;cursor:pointer;}
.review-upload-remove:focus-visible{outline:2px solid #9e824b;outline-offset:2px;}
.review-upload-remove:disabled{opacity:.5;cursor:wait;}
#reviewUploadStatus.upload-error{color:#922c27;}

/* Editorial review layout: live copy and original client media. */
.published-reviews{padding:60px 5.4vw 70px;background:#f7f3eb;}
.published-reviews h2{font-family:"Bodoni Moda",serif;font-size:clamp(36px,3.6vw,60px);font-weight:400;line-height:1.08;}
.published-reviews h2 em{color:#b79c67;}
.reviews-heading{margin-bottom:34px;align-items:center;}
.reviews-heading .review-outline{padding:15px 22px;}
.published-reviews .reviews-grid{grid-template-columns:1fr;gap:40px;}
.published-reviews .review-editorial{display:grid;grid-template-columns:minmax(0,.53fr) minmax(0,1fr);gap:28px;border:0;padding:0;background:transparent;align-items:start;}
.review-editorial-copy{border:1px solid #b79c6760;padding:32px 30px;min-width:0;min-height:100%;}
.review-editorial-copy .review-stars{font-size:22px;color:#a5884f;letter-spacing:2px;margin-bottom:24px;}
.review-editorial-copy h3{font-family:"Bodoni Moda",serif;font-size:28px;line-height:1.2;margin:0 0 12px;}
.review-editorial-copy .review-event{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#a5884f;margin:0;padding-bottom:24px;border-bottom:1px solid #b79c6780;line-height:1.6;}
.review-editorial-copy .review-text{font-family:"Bodoni Moda",serif;font-size:clamp(18px,1.45vw,24px);font-weight:400;line-height:1.55;white-space:pre-line;margin:24px 0 28px;overflow-wrap:anywhere;}
.review-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:6;overflow:hidden;}
.review-expand{border:1px solid #b79c67;background:transparent;color:#947943;padding:13px 20px;font:400 18px/1.3 "Bodoni Moda",serif;cursor:pointer;text-align:left;}
.review-expand:focus-visible,.review-media-arrow:focus-visible,.review-media-thumbnail:focus-visible{outline:2px solid #947943;outline-offset:4px;}
.review-editorial-gallery{min-width:0;}
.review-media-stage{position:relative;}
.review-media-viewport{aspect-ratio:2.35;background:#191919;overflow:hidden;}
.review-media-viewport img,.review-media-viewport video{display:block;width:100%;height:100%;object-fit:contain;}
.review-media-arrow{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;display:grid;place-items:center;border:1px solid #f4efe6;border-radius:50%;color:#fff;background:#0005;font:300 35px/1 Georgia,serif;cursor:pointer;}
.review-media-arrow[hidden]{display:none;}
.review-media-prev{left:18px;}.review-media-next{right:18px;}
.review-media-caption{display:flex;justify-content:space-between;gap:16px;padding:12px 0;color:#6e6046;font:400 17px/1.3 "Bodoni Moda",serif;}
.review-media-thumbnails{display:flex;gap:12px;overflow-x:auto;padding:3px 2px 8px;scroll-snap-type:x proximity;}
.review-media-thumbnail{position:relative;flex:0 0 calc((100% - 24px)/3);min-width:100px;aspect-ratio:2.1;background:#191919;border:2px solid transparent;padding:0;cursor:pointer;scroll-snap-align:start;overflow:hidden;}
.review-media-thumbnail[aria-pressed="true"]{border-color:#b79c67;}
.review-media-thumbnail img,.review-media-thumbnail video{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none;}
.review-thumbnail-play{position:absolute;left:10px;bottom:8px;border:1px solid #fff;border-radius:50%;width:26px;height:26px;display:grid;place-items:center;font-size:11px;color:#fff;background:#0006;pointer-events:none;}
.published-reviews .review-without-media{grid-template-columns:1fr;}
.review-without-media .review-editorial-copy{max-width:820px;}
@media(max-width:850px){.published-reviews .review-editorial{grid-template-columns:1fr;gap:22px;}.reviews-heading{align-items:flex-start;}.review-editorial-copy{padding:28px;min-height:0;}.review-media-viewport{aspect-ratio:16/9;}.review-editorial-copy .review-text{font-size:21px;}.review-editorial-copy .review-stars{margin-bottom:18px;}}
@media(max-width:500px){.published-reviews{padding:46px 24px;}.published-reviews h2{font-size:38px;}.review-editorial-copy{padding:24px;}.review-editorial-copy h3{font-size:26px;}.review-media-arrow{width:34px;height:34px;font-size:28px;}.review-media-prev{left:10px;}.review-media-next{right:10px;}.review-media-thumbnails{gap:8px;}.review-media-thumbnail{flex-basis:calc((100% - 16px)/3);min-width:80px;aspect-ratio:1.6;}}

/* Full reviews scroll in place with the FAQ gold scrollbar. */
.review-editorial-copy .review-text{height:250px;max-height:250px;margin:24px 0 28px;padding-right:18px;box-sizing:border-box;}
.review-editorial-copy .review-scroll-open{display:block;overflow-y:scroll;overflow-x:hidden;overscroll-behavior-y:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#b99c65 #eee7da;scroll-padding-block:12px;}
.review-editorial-copy .review-scroll-open::-webkit-scrollbar{width:7px;}
.review-editorial-copy .review-scroll-open::-webkit-scrollbar-track{background:#eee7da;}
.review-editorial-copy .review-scroll-open::-webkit-scrollbar-thumb{background:#b99c65;border-radius:8px;}
.review-editorial-copy .review-text:focus-visible{outline:1px solid #b99c65;outline-offset:4px;}
@media(max-width:850px){.review-editorial-copy .review-text{height:230px;max-height:230px;}}
