@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,600;1,600&display=swap";:root{--navy:#10263d;--navy-light:#173a54;--cream:#f8f2e8;--paper:#fffdf9;--coral:#e96f55;--gold:#e8b75f;--ink:#1d2b37;--muted:#65717a;--line:#10263d21}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,Arial,sans-serif}a{color:inherit;text-decoration:none}img{width:100%;display:block}button,input,textarea{font:inherit}.site-header{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);z-index:50;background:#fffdf9f0;grid-template-columns:1fr auto 1fr;align-items:center;height:86px;padding:0 5vw;display:grid;position:sticky;top:0}.brand{align-items:center;width:max-content;display:inline-flex}.brand-logo{object-fit:contain;filter:drop-shadow(0 5px 9px #10263d24);width:104px;height:76px}.brand-icon{background:var(--coral);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.brand-icon svg{fill:currentColor;width:22px}.brand strong{font-family:Playfair Display,Georgia,serif;font-size:20px;line-height:1;display:block}.brand small{text-transform:uppercase;color:var(--muted);letter-spacing:.16em;margin-top:5px;font-size:8px;display:block}nav{align-items:center;gap:30px;font-size:14px;font-weight:600;display:flex}nav a{position:relative}nav a:after{content:"";background:var(--coral);height:2px;transition:right .2s;position:absolute;bottom:-8px;left:0;right:100%}nav a:hover:after{right:0}.header-call{color:var(--coral);border:1px solid var(--coral);border-radius:100px;justify-self:end;padding:10px 17px;font-size:14px;font-weight:700}.menu-button{display:none}.hero{background:var(--navy);color:#fff;grid-template-columns:1.12fr .88fr;align-items:center;gap:5vw;min-height:calc(100vh - 86px);padding:60px 7vw 70px;display:grid;position:relative;overflow:hidden}.hero-glow{filter:blur(90px);background:#e8b75f29;border-radius:50%;width:520px;height:520px;position:absolute;top:-190px;left:-180px}.hero-content{z-index:2;max-width:760px;position:relative}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin:0 0 22px;font-size:12px;font-weight:700}.eyebrow.coral{color:var(--coral)}h1,h2{letter-spacing:-.025em;margin:0;font-family:Playfair Display,Georgia,serif;font-weight:600;line-height:1.08}h1{max-width:900px;font-size:clamp(48px,5.5vw,82px)}h1 em{color:var(--gold)}.hero-copy{color:#ffffffbf;max-width:650px;margin:26px 0 32px;font-size:clamp(17px,1.5vw,21px);line-height:1.7}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.button{cursor:pointer;border:0;border-radius:100px;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:0 23px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--coral);color:#fff}.button.secondary{color:#fff;border:1px solid #ffffff61}.trust-row{color:#ffffff94;gap:34px;margin-top:52px;font-size:12px;display:flex}.trust-row span{border-left:1px solid #fff3;padding-left:16px}.trust-row b{color:#fff;font-family:Playfair Display,Georgia,serif;font-size:24px;display:block}.hero-visual{justify-self:center;max-width:550px;position:relative}.photo-frame{aspect-ratio:.82;border:7px solid #ffffff14;border-radius:250px 250px 24px 24px;overflow:hidden}.photo-frame img{object-fit:cover;object-position:center;height:100%}.floating-card{background:var(--paper);color:var(--ink);border-radius:14px;align-items:center;gap:13px;max-width:265px;padding:16px 19px;display:flex;position:absolute;bottom:28px;left:-48px;box-shadow:0 20px 60px #0000003d}.floating-card p{margin:0;font-size:13px;line-height:1.4}.mini-note{color:var(--coral);background:#fde8e2;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.mini-note svg{fill:currentColor;width:20px}.section{padding:110px 7vw}.intro{grid-template-columns:.8fr 1.2fr;gap:8vw;max-width:1400px;margin:auto;display:grid}h2{color:var(--navy);font-size:clamp(40px,4.5vw,66px)}.intro-copy{max-width:710px}.intro-copy p,.lead{color:var(--muted);margin-top:0;font-size:18px;line-height:1.8}.text-link{color:var(--coral);gap:15px;margin-top:15px;font-weight:700;display:inline-flex}.experience{background:var(--cream)}.section-heading{max-width:1260px;margin:0 auto 55px}.feature-grid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);max-width:1260px;margin:auto;display:grid}.feature-grid article{padding:36px 45px 20px 0}.feature-grid article+article{border-left:1px solid var(--line);padding-left:45px}.feature-grid span{color:var(--coral);font-size:13px;font-weight:700}.feature-grid h3{color:var(--navy);margin:24px 0 12px;font-family:Playfair Display,Georgia,serif;font-size:28px}.feature-grid p{color:var(--muted);margin:0;line-height:1.7}.repertoire{grid-template-columns:.85fr 1.15fr;align-items:center;gap:8vw;max-width:1400px;margin:auto;display:grid}.repertoire-photo{position:relative}.repertoire-photo>img{aspect-ratio:.88;object-fit:cover;border-radius:24px}.record{background:var(--navy);width:92px;height:92px;color:var(--gold);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:42px;right:-43px;box-shadow:0 12px 40px #10263d40}.record:before{content:"";border:1px solid #ffffff38;border-radius:50%;position:absolute;inset:12px}.record svg{fill:currentColor;width:31px}.repertoire-content .lead{max-width:650px;margin:25px 0 32px}.song-list{border-top:1px solid var(--line)}.song-list>div{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;align-items:start;gap:25px;padding:18px 0;display:grid}.song-list h3{color:var(--navy);margin:0;font-size:15px}.song-list p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.and-more{color:var(--coral);margin-top:18px;font-size:14px;font-weight:600}.gallery{background:var(--navy);color:#fff}.gallery h2{color:#fff}.section-heading.row{justify-content:space-between;align-items:end;display:flex}.section-heading.row>p{color:#ffffffa1;max-width:380px;margin:0;line-height:1.7}.gallery-subtitle{color:#fff;max-width:1260px;margin:0 auto 22px;font-family:Playfair Display,Georgia,serif;font-size:26px}.gallery-subtitle-old{margin-top:54px}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:255px;gap:18px;max-width:1260px;margin:auto;display:grid}.gallery-grid figure{border-radius:18px;margin:0;overflow:hidden}.gallery-grid figure:first-child{grid-row:span 2}.gallery-grid figure:nth-child(4),.gallery-grid figure:nth-child(10){grid-column:span 2}.gallery-button{cursor:zoom-in;color:#fff;background:0 0;border:0;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.gallery-grid img{object-fit:cover;height:100%;transition:transform .5s,filter .3s}:is(.gallery-button:hover img,.gallery-button:focus-visible img){filter:brightness(.78);transform:scale(1.045)}.gallery-button:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}.gallery-zoom{width:38px;height:38px;color:var(--navy);opacity:0;background:#ffffffeb;border-radius:50%;place-items:center;font-size:25px;transition:opacity .25s,transform .25s;display:grid;position:absolute;bottom:16px;right:16px;transform:translateY(8px)}:is(.gallery-button:hover .gallery-zoom,.gallery-button:focus-visible .gallery-zoom){opacity:1;transform:translateY(0)}.gallery-count{color:#ffffff9e;text-align:center;max-width:1260px;margin:25px auto 0;font-size:13px}.testimonials{background:var(--paper)}.section-heading.centered{text-align:center}.testimonial-grid{grid-template-columns:repeat(3,1fr);gap:20px;max-width:1260px;margin:auto;display:grid}blockquote{background:var(--cream);border-radius:18px;flex-direction:column;min-height:270px;margin:0;padding:32px;display:flex}.quote-mark{color:var(--coral);font-family:Georgia,serif;font-size:70px;line-height:.7}blockquote p{color:var(--navy);flex:1;font-family:Playfair Display,Georgia,serif;font-size:19px;line-height:1.55}blockquote footer{color:var(--muted);text-transform:uppercase;letter-spacing:.1em;font-size:12px;font-weight:700}.contact{background:var(--coral);color:#fff;grid-template-columns:.85fr 1.15fr;gap:8vw;display:grid}.contact h2,.contact .eyebrow{color:#fff}.contact-copy>p:not(.eyebrow){color:#fffc;max-width:510px;font-size:18px;line-height:1.7}.direct-contact{gap:15px;margin-top:45px;display:grid}.direct-contact a{width:max-content;display:block}.direct-contact small{text-transform:uppercase;letter-spacing:.15em;opacity:.65;margin-bottom:4px;font-size:9px;display:block}.direct-contact strong{font-size:20px}form{background:var(--paper);color:var(--ink);border-radius:22px;padding:34px;box-shadow:0 25px 70px #772b1d40}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}label{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);margin-bottom:18px;font-size:10px;font-weight:700;display:block}input,textarea{resize:vertical;width:100%;color:var(--ink);background:0 0;border:0;border-bottom:1px solid #ccd1d2;outline:none;padding:10px 0}input:focus,textarea:focus{border-color:var(--coral)}textarea{min-height:105px}.button.light{background:var(--navy);color:#fff;width:100%;margin-top:4px}.form-note{text-align:center;color:var(--muted);margin-top:12px;font-size:10px;display:block}.legal{background:var(--paper);grid-template-columns:.7fr 1.3fr;gap:7vw;display:grid}.legal-heading{max-width:430px}.legal-heading h2{font-size:clamp(38px,4vw,58px)}.legal-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.legal-grid article{border:1px solid var(--line);background:var(--cream);border-radius:16px;padding:25px}.legal-grid h3{color:var(--navy);margin:0 0 12px;font-family:Playfair Display,Georgia,serif;font-size:20px}.legal-grid p{color:var(--muted);margin:0;font-size:13px;line-height:1.7}.legal-grid a{color:var(--coral);font-weight:700}.site-footer{color:#ffffff8c;background:#0b1b2b;justify-content:space-between;align-items:center;gap:22px;padding:35px 5vw;font-size:11px;display:flex}.footer-brand{color:#fff}.footer-logo{filter:drop-shadow(0 6px 12px #00000047);width:92px;height:74px}.footer-brand small{color:#ffffff80}@media (max-width:960px){.site-header{grid-template-columns:1fr auto;height:76px}.header-call{display:none}.menu-button{background:0 0;border:0;place-content:center;gap:5px;width:42px;height:42px;display:grid}.menu-button span{background:var(--navy);width:22px;height:2px;display:block}nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:20px;padding:24px 7vw;display:none;position:absolute;top:76px;left:0;right:0;box-shadow:0 12px 30px #10263d1a}nav.open{display:flex}.hero{grid-template-columns:1fr;padding-top:70px}.hero-content{max-width:none}.hero-visual{width:70%;margin-top:20px}.intro,.repertoire,.contact,.legal{grid-template-columns:1fr}.repertoire-photo{max-width:560px}.testimonial-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}blockquote{min-height:220px}.site-footer{flex-wrap:wrap}}@media (max-width:650px){.site-header{padding:0 20px}.brand-logo{width:82px;height:64px}.section{padding:78px 22px}.hero{min-height:auto;padding:58px 22px 70px}h1{font-size:45px}.hero-copy{font-size:16px}.hero-actions .button{width:100%}.trust-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.trust-row span{padding-left:9px}.trust-row b{font-size:20px}.hero-visual{justify-self:end;width:92%}.floating-card{bottom:18px;left:-16px}h2{font-size:39px}.intro{gap:35px}.feature-grid{grid-template-columns:1fr}.feature-grid article,.feature-grid article+article{border-left:0;border-bottom:1px solid var(--line);padding:28px 0}.record{width:72px;height:72px;right:-12px}.song-list>div{grid-template-columns:1fr;gap:8px}.section-heading.row{display:block}.section-heading.row>p{margin-top:20px}.gallery-grid{grid-template-rows:none;grid-template-columns:1fr;grid-auto-rows:auto;height:auto}.gallery-grid figure{height:260px}.gallery-grid figure:first-child{grid-row:auto;height:380px}.gallery-grid figure:nth-child(4),.gallery-grid figure:nth-child(10){grid-column:auto}.gallery-zoom{opacity:1;transform:none}.form-row{grid-template-columns:1fr;gap:0}form{padding:24px 20px}.legal-grid{grid-template-columns:1fr}.direct-contact strong{font-size:16px}.site-footer{padding:35px 22px;display:grid}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
