@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Manrope:wght@400;500;600;700&family=Playfair+Display:wght@400;500;600&display=swap');
:root{--ink:#223029;--ink-2:#2d4036;--leaf:#526153;--cream:#f4f0e7;--paper:#faf8f2;--sand:#e6dfd1;--gold:#c49c66;--taupe:#9d8d7a;--text:#3b453e;--muted:#6e776f;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans','Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--text);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}::selection{background:#cdb484;color:#233229}
.skip-link{position:absolute;left:-999px;z-index:100;background:white;padding:10px}.skip-link:focus{left:10px;top:10px}
.shell{width:min(1290px,calc(100% - 112px));margin-inline:auto}.serif{font-family:var(--serif);font-weight:400;letter-spacing:-.035em}.eyebrow{display:flex;align-items:center;gap:16px;text-transform:uppercase;letter-spacing:.205em;font-size:10px;font-weight:700;line-height:1.5}.eyebrow:before{content:"";width:24px;height:1px;background:currentColor;opacity:.7}.eyebrow.light{color:#e0c9a4}.section-headline{font-size:clamp(42px,5vw,72px);line-height:1.17;color:var(--ink);margin:18px 0 24px}.section-copy{font-size:16px;max-width:560px;color:#58635a;line-height:1.95}
.site-header{height:90px;background:#fbf9f5;display:flex;align-items:center;position:sticky;top:0;z-index:99;border-bottom:1px solid #e9e4db;box-shadow:0 4px 24px rgba(14,24,17,.035)}.nav-wrap{width:min(1430px,calc(100% - 96px));margin:auto;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:13px;min-width:255px}.brand img{width:42px;height:42px}.brand .brand-text{display:flex;flex-direction:column;font-size:16px;font-weight:600;letter-spacing:.14em;line-height:1.1;color:#26322b}.brand .brand-text small{font-size:8px;font-weight:600;letter-spacing:.25em;margin-top:7px;color:#907453}.nav-links{display:flex;align-items:center;justify-content:center;gap:32px;margin-left:auto}.nav-links a{font-size:11px;font-weight:650;letter-spacing:.095em;text-transform:uppercase;color:#39463d;white-space:nowrap;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:#ae8858}.nav-right{display:flex;align-items:center;gap:22px;margin-left:14px}.lang-switch{display:flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.05em;font-weight:650}.lang-switch a{padding:4px;color:#8c948b}.lang-switch a[aria-current="page"]{color:#24372c;border-bottom:1px solid #9f7e52}.nav-contact{padding:14px 20px;background:var(--ink);color:#fff!important;font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;transition:background .2s}.nav-contact:hover{background:#526354}.menu-toggle{display:none;align-items:center;justify-content:center;border:1px solid #dad6cc;background:none;width:42px;height:42px;color:var(--ink);font-size:23px}
.hero{background:var(--ink);color:white;display:grid;grid-template-columns:50.5% 49.5%;min-height:680px;overflow:hidden}.hero-copy{padding:100px clamp(35px,7.4vw,137px) 68px max(calc((100vw - 1290px)/2),56px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-family:var(--serif);font-size:clamp(57px,5.65vw,90px);font-weight:400;letter-spacing:-.043em;line-height:1.11;max-width:630px;margin:30px 0}.hero h1 em{color:#dbc59f;font-style:italic}.hero p{font-size:15px;line-height:2;color:#d5dbd3;max-width:460px;margin:0 0 30px}.hero-media{position:relative;min-height:100%;background:#aa9579;overflow:hidden}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(.76) contrast(1.07)}.hero-media:after{content:"";position:absolute;inset:0;box-shadow:inset 45px 0 80px rgba(18,36,28,.25);pointer-events:none}.hero-mark{position:absolute;bottom:37px;right:46px;z-index:2;border:1px solid #e9e2d760;color:white;font-size:10px;letter-spacing:.22em;padding:12px 17px;text-transform:uppercase}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:16px 23px;text-transform:uppercase;font-size:10px;letter-spacing:.13em;font-weight:700;line-height:1.2;transition:transform .18s,background .18s}.btn:hover{transform:translateY(-2px)}.btn span.arrow{font-size:19px;font-weight:300;line-height:.8}.btn-gold{background:var(--gold);color:#213028}.btn-light{color:var(--ink);background:#f5f2ea}.btn-dark{background:var(--ink);color:white}.btn-outline{border:1px solid #9faaa0;color:var(--ink);background:transparent}.discover{display:flex;gap:13px;align-items:center;margin-top:70px;font-size:9px;letter-spacing:.18em;color:#c6cfc6;text-transform:uppercase}.discover .line{display:inline-block;height:1px;width:36px;background:#b5c2b4}
.prelude{padding:120px 0 110px;background:var(--paper)}.prelude-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.prelude h2{font-size:clamp(45px,5vw,70px);margin:20px 0 0;line-height:1.22}.prelude-right{padding:50px 10% 0 12%;border-left:1px solid #ded9cf}.prelude-right p{font-size:17px;line-height:1.95;color:#606b61}.signature{margin-top:32px;text-transform:uppercase;letter-spacing:.16em;font-size:10px;color:#85765f;font-weight:700}
.offerings{background:#eee9df;padding:107px 0 120px}.offering-intro{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:44px}.offering-intro h2{margin:20px 0 0}.offering-intro p{max-width:400px;margin:0 0 12px}.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.offering-card{min-height:365px;background:#f9f7f0;padding:41px 35px 35px;display:flex;flex-direction:column;transition:background .25s,transform .25s}.offering-card:hover{background:white;transform:translateY(-3px)}.card-index{font-size:11px;color:#a28a65;letter-spacing:.2em;font-weight:600}.offering-card h3{font-size:35px;line-height:1.25;margin:48px 0 14px;color:var(--ink)}.offering-card p{max-width:320px;color:#67716b;font-size:14px;line-height:1.9;margin:0}.card-foot{margin-top:auto;padding-top:28px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #dedcd3;color:#5d635b;text-transform:uppercase;letter-spacing:.11em;font-weight:700;font-size:10px}.card-foot .arrow{font-size:25px;font-weight:400;color:#9e8259}
.feature{display:grid;grid-template-columns:1fr 1fr;min-height:630px;background:#27352d;color:#f5f1e8}.feature-art{overflow:hidden;min-height:540px;background:#9e8a70}.feature-art img{width:100%;height:100%;object-fit:cover}.feature-copy{padding:90px 12% 80px 12%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.feature h2{color:#f7f4eb;font-size:clamp(42px,4.5vw,68px);line-height:1.17;margin:25px 0}.feature p{max-width:500px;color:#cdd5ca;font-size:15px;line-height:2.05;margin:0 0 30px}.feature .eyebrow{color:#dfc8a6}
.values{padding:116px 0 122px}.values-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:110px;align-items:center}.values-image{aspect-ratio:1.18;overflow:hidden;box-shadow:30px 30px 0 #e6ded0}.values-image img{width:100%;height:100%;object-fit:cover}.values-copy h2{font-size:clamp(45px,4.6vw,67px);line-height:1.24;margin:20px 0}.values-copy p{font-size:15px;color:#667065;line-height:2;max-width:540px}.text-link{display:inline-flex;gap:28px;align-items:center;color:#65715e;text-transform:uppercase;letter-spacing:.135em;font-size:10px;font-weight:700;border-bottom:1px solid #929e91;padding-bottom:10px;margin-top:20px}.text-link span{font-size:21px;font-weight:300}
.note-banner{background:#d9d0bf;padding:78px 0}.note-banner-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.note-banner h2{font-size:clamp(33px,4vw,57px);margin:15px 0 0;max-width:800px}.note-banner p{max-width:350px;font-size:14px;line-height:1.9;color:#62665d;margin:0}.note-banner .btn{white-space:nowrap}
.contact-section{padding:112px 0 124px;background:#f9f7f0}.contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:110px}.contact-section h2{font-size:clamp(43px,5vw,71px);line-height:1.19;margin:20px 0 22px}.contact-section p{font-size:15px;line-height:1.95;color:#6b746c}.contact-info{margin-top:55px;border-top:1px solid #dfdacd;padding-top:25px}.contact-info p{font-size:13px;margin:8px 0}.contact-info strong{text-transform:uppercase;letter-spacing:.14em;color:#34483a;font-size:10px}.contact-form{background:white;padding:48px 48px 40px;border:1px solid #e8e3d9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.field.full{grid-column:1/-1}.field label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#5e6b5e}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid #d9dcd2;border-radius:0;background:transparent;padding:11px 0 12px;min-height:42px;font-size:14px;color:#26352d;outline:0}.field select{background:white}.field textarea{height:102px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#937349}.form-hint{font-size:12px!important;margin:0 0 16px!important;color:#8a7d6d!important}.form-status{margin-top:17px;color:#294a35;font-size:13px;line-height:1.7}.contact-form .btn{border:0}.copy-btn{display:none;margin-top:12px;background:none;border:0;text-decoration:underline;font-size:13px;color:var(--ink);padding:0}
.footer{background:#1d2b23;color:#edece6;padding:75px 0 30px}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:52px;padding-bottom:80px}.footer .brand-text{color:white!important}.footer .brand-text small{color:#b7a58d!important}.footer-brand p{max-width:285px;color:#c2c9bf;font-size:13px;line-height:1.95;margin-top:27px}.footer h4{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#bea47f;font-weight:700;margin:0 0 23px}.footer-col a,.footer-col span{display:block;font-size:13px;color:#d1d5ce;margin:8px 0}.footer-col a:hover{color:white}.footer-bottom{padding-top:20px;border-top:1px solid #536056;display:flex;justify-content:space-between;gap:25px;color:#aab6aa;font-size:10px;letter-spacing:.06em}
.inner-hero{display:grid;grid-template-columns:55% 45%;min-height:520px;background:#25352c;color:#f9f5e9}.inner-hero .hero-copy{padding-block:75px}.inner-hero h1{font-size:clamp(54px,5.3vw,84px);margin:25px 0}.inner-hero .hero-media img{object-position:center}.inner-hero .hero-media{max-height:650px}.intro-block{padding:100px 0 65px}.intro-block .intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.intro-block h2{font-size:clamp(39px,4.5vw,62px);margin:20px 0}.intro-block p{font-size:16px;line-height:1.95;color:#637064}.instrument-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.instrument-card{min-height:220px;background:#ebe6da;display:flex;flex-direction:column;justify-content:space-between;padding:26px;transition:transform .2s,background .2s}.instrument-card:hover{transform:translateY(-3px);background:#e6dfd0}.instrument-card span{color:#aa8b60;font-size:10px;letter-spacing:.1em}.instrument-card strong{font-size:30px;font-family:var(--serif);font-weight:400;color:#2d4033;line-height:1.25}.instrument-list{padding:30px 0 115px}.subsection-title{font-family:var(--serif);font-size:45px;font-weight:400;letter-spacing:-.03em;color:var(--ink);margin:40px 0 35px}.steps{padding:104px 0;background:#eae3d7}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px}.step{border-top:1px solid #b4a693;padding-top:24px}.step span{color:#96744e;font-size:11px;letter-spacing:.1em}.step h3{font-family:var(--serif);font-weight:400;font-size:31px;color:var(--ink);margin:25px 0 12px}.step p{font-size:14px;line-height:1.95;color:#60695e}.simple-faq{padding:100px 0;background:#faf8f2}.faq-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:90px}.simple-faq h2{font-size:clamp(38px,4vw,59px);margin:16px 0}.faq-list details{border-bottom:1px solid #dadbcf;padding:18px 0}.faq-list summary{list-style:none;display:flex;justify-content:space-between;gap:18px;font-size:15px;font-weight:600;color:#344235;cursor:pointer}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-size:24px;font-weight:300;line-height:1}.faq-list details[open] summary:after{content:'−'}.faq-list details p{font-size:14px;line-height:1.9;color:#667166;padding-right:35px}.instrument-feature{padding:90px 0 110px}.instrument-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px;align-items:center}.instrument-feature-art{background:#a79a84;aspect-ratio:1/1}.instrument-feature-art img{height:100%;width:100%;object-fit:cover}.instrument-feature h2{font-size:clamp(42px,4.5vw,67px);margin:18px 0}.instrument-feature p{font-size:15px;color:#687367;line-height:2}
@media(max-width:1150px){.nav-links{gap:18px}.brand{min-width:215px}.nav-wrap{gap:20px;width:calc(100% - 60px)}.nav-contact{padding:12px 14px}.hero-copy{padding-left:48px;padding-right:45px}.contact-grid{gap:55px}.values-grid{gap:65px}.footer-top{gap:25px}.shell{width:calc(100% - 90px)}}
@media(max-width:910px){.site-header{height:74px}.nav-wrap{width:calc(100% - 42px)}.nav-links{display:none;position:absolute;left:0;right:0;top:74px;background:#fbf9f5;padding:22px 26px 32px;flex-direction:column;align-items:stretch;gap:18px;border-bottom:1px solid #dedbd1;box-shadow:0 10px 20px #0001}.nav-links.is-open{display:flex}.nav-links a{font-size:13px;padding:8px 0}.menu-toggle{display:flex}.nav-right{margin-left:auto}.nav-contact{display:none}.hero{grid-template-columns:1fr 1fr;min-height:600px}.hero-copy{padding:60px 34px}.hero h1{font-size:clamp(45px,6vw,64px)}.prelude-grid,.values-grid,.contact-grid,.faq-grid{gap:40px}.offering-card{padding:30px 25px}.offering-card h3{font-size:30px}.feature-copy{padding:60px 9%}.footer-top{grid-template-columns:repeat(2,1fr)}.steps-grid{gap:22px}.instrument-feature-grid{gap:50px}}
@media(max-width:680px){.shell{width:calc(100% - 42px)}.brand{min-width:0;gap:8px}.brand img{width:36px;height:36px}.brand .brand-text{font-size:12px;letter-spacing:.11em}.brand .brand-text small{font-size:7px}.nav-wrap{gap:8px}.nav-right{gap:10px}.hero,.inner-hero{display:flex;flex-direction:column}.hero-copy{padding:70px 28px 56px;min-height:530px}.hero h1{font-size:clamp(53px,13.2vw,73px)}.hero p{font-size:14px}.hero-media{min-height:340px;height:400px}.hero-media img{object-position:center 40%}.hero-mark{right:25px;bottom:25px}.discover{margin-top:45px}.inner-hero .hero-copy{min-height:450px}.inner-hero .hero-media{height:290px;min-height:290px}.prelude{padding:75px 0}.prelude-grid,.intro-block .intro-grid{grid-template-columns:1fr;gap:18px}.prelude-right{border-left:0;border-top:1px solid #e1dcd1;padding:23px 0 0}.prelude-right p{font-size:15px}.section-headline{font-size:46px}.offerings{padding:74px 0}.offering-intro{display:block}.offering-intro p{margin-top:20px}.cards-3,.steps-grid{grid-template-columns:1fr;gap:14px}.offering-card{min-height:280px}.offering-card h3{margin-top:28px}.feature{grid-template-columns:1fr}.feature-art{min-height:380px;height:380px}.feature-copy{padding:70px 28px 78px}.values{padding:77px 0}.values-grid{grid-template-columns:1fr;gap:48px}.values-image{box-shadow:16px 16px 0 #e6ded0}.note-banner{padding:65px 0}.note-banner-inner{display:block}.note-banner p{margin:17px 0 26px}.contact-section{padding:80px 0}.contact-grid{grid-template-columns:1fr;gap:40px}.contact-info{margin-top:25px}.contact-form{padding:28px 22px}.form-grid{grid-template-columns:1fr;gap:0}.footer{padding-top:60px}.footer-top{grid-template-columns:1fr 1fr;gap:36px 18px;padding-bottom:40px}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.intro-block{padding:70px 0 45px}.instrument-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.instrument-card{min-height:170px;padding:20px}.instrument-card strong{font-size:26px}.instrument-list{padding-bottom:80px}.steps{padding:80px 0}.simple-faq{padding:80px 0}.faq-grid,.instrument-feature-grid{grid-template-columns:1fr;gap:25px}.instrument-feature{padding:75px 0}.instrument-feature-art{aspect-ratio:1.2}.subsection-title{font-size:40px}.note-banner h2{font-size:43px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* Joseph’s Music brand palette — derived from supplied indigo/royal-blue logo. */
:root{--ink:#141235;--ink-2:#222051;--leaf:#55539a;--cream:#f0eff9;--paper:#f9f8fd;--sand:#e5e3f3;--gold:#b9b7e2;--taupe:#8988b0;--text:#272544;--muted:#686585}
body{background:var(--paper);color:var(--text)}::selection{background:#b9b7e2;color:#151230}
.site-header{background:#fdfcfe;border-bottom-color:#e4e2f1;box-shadow:0 4px 24px rgba(25,19,65,.05)}
.brand .brand-text{color:#171431}.brand .brand-text small{color:#625dac}
.nav-links a{color:#272446}.nav-links a:hover,.nav-links a.active{color:#514bc5}
.lang-switch,.lang-switch a{color:#403b73}.nav-contact{background:#2f29ad;color:white;border-color:#2f29ad}.nav-contact:hover{background:#17134e;border-color:#17134e}
.hero{background:linear-gradient(120deg,#090720,#15104b 60%,#2d2599)}
.hero h1 em{color:#c1bff0}.hero p{color:#e1def0}.eyebrow.light,.feature .eyebrow{color:#bdbbea}
.hero-media{background:#1a1436}.hero-media img{filter:saturate(.94) contrast(1.03)}
.hero-media:after{box-shadow:inset 50px 0 90px rgba(14,9,46,.33);background:linear-gradient(90deg,rgba(18,10,65,.12),transparent 36%)}
.hero-mark{border-color:rgba(236,233,255,.56)}
.btn-gold{background:#b7b6ee!important;color:#1a1643!important}.btn-gold:hover{background:#dad8ff!important}
.prelude{background:#f9f8fd}.prelude-right{border-color:#dddaed}.prelude-right p,.section-copy{color:#65617d}.signature{color:#5752ab}
.offerings{background:#e9e7f5}.offering-card{background:#fefeff}.offering-card:hover{background:white}.card-index{color:#6660b5}.offering-card h3{color:#211d57}.offering-card p{color:#696584}.card-foot{color:#514a91;border-top-color:#dfdced}
.feature{background:linear-gradient(120deg,#181346,#100d35);color:#f5f2ff}.feature p{color:#d9d6f1}.feature-art{background:#302e53}
.values{background:#fbfaff}.values-image{box-shadow:30px 30px 0 #e1dff4}.values-copy p{color:#636080}.text-link{color:#4b43a3;border-color:#9f9bc9}
.note-banner{background:#dcd9f3}.note-banner p{color:#575377}.note-banner .btn,.btn-dark{background:#252066!important;color:white!important}.note-banner .btn:hover,.btn-dark:hover{background:#443bc0!important}
.contact-section{background:#f4f2fb}.contact-section p{color:#69657f}.contact-info{border-color:#dad7eb}.contact-info strong,.field label{color:#40388b}.contact-info a{color:#3530ac;text-decoration:underline;text-decoration-color:#bbb7e2;text-underline-offset:3px}
.contact-form{border-color:#e4e1f2;box-shadow:0 16px 50px rgba(25,19,65,.04)}.field input,.field select,.field textarea{border-bottom-color:#d9d5e8}.field input:focus,.field select:focus,.field textarea:focus{border-color:#4d45bd}.form-hint{color:#6c658f!important}.form-status{color:#47409a}
.footer{background:#0b0927;color:#f4f2ff}.footer .brand-text small{color:#aaa6de!important}.footer-brand p{color:#c4c0e4}.footer h4{color:#a8a3e0}.footer-col a,.footer-col span{color:#d4d0ef}.footer-bottom{border-color:#36315c;color:#aaa4d4}
.inner-hero{background:linear-gradient(115deg,#12103d,#282279);color:#f9f6ff}.intro-block p,.step p,.instrument-feature p{color:#686380}
.instrument-card{background:#e9e7f7}.instrument-card:hover{background:#dfdcf1}.instrument-card span,.step span{color:#6760ad}.instrument-card strong{color:#27215f}.steps{background:#eae8f7}.step{border-color:#bab4d8}.simple-faq{background:#faf9ff}.faq-list details{border-color:#e2dff0}.faq-list summary{color:#2e2868}.faq-list details p{color:#676184}
.brand img{border-radius:5px}.original-logo{width:132px;height:132px;object-fit:cover;margin-bottom:24px;border:1px solid #43417e;box-shadow:0 9px 30px #0002}
.footer-brand .brand img{display:none}
.contact-info p:last-child{overflow-wrap:anywhere}
@media(max-width:910px){.nav-links{background:#fcfbff;border-bottom-color:#ddd9eb}}
@media(max-width:680px){.hero-media img{object-position:center 30%}.original-logo{width:110px;height:110px}.values-image{box-shadow:16px 16px 0 #e1dff4}}
