@font-face{font-family:'Fraunces';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/fraunces-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/fraunces-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/fraunces-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/fraunces-latin-700-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/inter-latin-400-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/inter-latin-500-normal.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/inter-latin-600-normal.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/vazirmatn-arabic-400-normal.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/vazirmatn-arabic-500-normal.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/vazirmatn-arabic-600-normal.woff2') format('woff2');}
@font-face{font-family:'Vazirmatn';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/vazirmatn-arabic-700-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Serif Armenian';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/noto-serif-armenian-armenian-400-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Serif Armenian';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/noto-serif-armenian-armenian-500-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Serif Armenian';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/noto-serif-armenian-armenian-600-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Serif Armenian';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/noto-serif-armenian-armenian-700-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Sans Armenian';font-style:normal;font-weight:400;font-display:swap;src:url('../assets/fonts/noto-sans-armenian-armenian-400-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Sans Armenian';font-style:normal;font-weight:500;font-display:swap;src:url('../assets/fonts/noto-sans-armenian-armenian-500-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Sans Armenian';font-style:normal;font-weight:600;font-display:swap;src:url('../assets/fonts/noto-sans-armenian-armenian-600-normal.woff2') format('woff2');}
@font-face{font-family:'Noto Sans Armenian';font-style:normal;font-weight:700;font-display:swap;src:url('../assets/fonts/noto-sans-armenian-armenian-700-normal.woff2') format('woff2');}
[dir=rtl]{--font-display:'Vazirmatn',sans-serif;--font-body:'Vazirmatn',sans-serif;}
html[lang=hy]{--font-display:'Noto Serif Armenian','Fraunces',serif;--font-body:'Noto Sans Armenian','Inter',sans-serif;}

:root{
  --parchment:#F7F3EA;
  --navy:#1C2541;
  --charcoal:#1A1A1A;
  --amber:#C08A3D;
  --amber-text:#8a6329;
  --slate:#5C6166;
  --font-display:'Fraunces',serif;
  --font-body:'Inter',sans-serif;
  --header-h:60px;
}
*{box-sizing:border-box;}
html,body{max-width:100%;}
html,body{margin:0;padding:0;}
body{
  background:var(--parchment);
  color:var(--charcoal);
  font-family:var(--font-body);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,.display{font-family:var(--font-display);color:var(--navy);margin:0 0 .5em;font-weight:600;}
p{margin:0 0 1em;}
a{color:var(--navy);}
.offmic-post-body a:hover{color:var(--amber-text);}
.wrap{max-width:1040px;margin:0 auto;padding:0 24px;}
button{font-family:inherit;cursor:pointer;}

/* banner */
.preview-banner{background:var(--navy);color:var(--parchment);font-size:13px;text-align:center;padding:8px 16px;letter-spacing:.02em;}
.preview-banner b{color:var(--amber);}

/* header */
header.site{position:sticky;top:0;z-index:50;background:rgba(244,239,228,.94);backdrop-filter:blur(6px);border-bottom:1px solid rgba(28,37,65,.12);}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;max-width:1040px;margin:0 auto;gap:16px;}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);cursor:pointer;background:none;border:none;padding:0;}
.logo-mark{height:46px;width:auto;flex-shrink:0;display:flex;align-items:center;}
.logo-mark svg{height:100%;width:auto;display:block;}
.logo-name{font-family:'Fraunces',serif;font-weight:600;font-size:17px;line-height:1.1;}
nav.main{display:flex;align-items:center;gap:28px;min-width:0;}
nav.main .navlinks{display:flex;gap:24px;list-style:none;margin:0;padding:0;flex-wrap:wrap;}
nav.main .navlinks li{list-style:none;}
nav.main a.navlink{background:none;border:none;font-size:14.5px;color:var(--charcoal);padding:6px 2px;border-bottom:2px solid transparent;font-weight:500;text-decoration:none;cursor:pointer;display:inline-block;}
nav.main a.navlink.active{color:var(--navy);border-bottom-color:var(--amber);}
nav.main a.navlink:hover{color:var(--navy);}
.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;background:none;border:none;cursor:pointer;padding:0;flex-shrink:0;touch-action:manipulation;}
.hamburger span{display:block;width:22px;height:2px;background:var(--navy);border-radius:2px;transition:transform .2s,opacity .2s;margin:0 auto;}
.hamburger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.hamburger[aria-expanded="true"] span:nth-child(2){opacity:0;}
.hamburger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.menu-close{display:none;position:absolute;top:16px;right:16px;background:none;border:none;font-size:32px;line-height:1;color:var(--navy);cursor:pointer;padding:14px;min-width:48px;min-height:48px;touch-action:manipulation;}
.menu-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(28,37,65,.35);z-index:90;opacity:0;transition:opacity .25s;touch-action:manipulation;}
.menu-overlay.open{display:block;opacity:1;}

@media (max-width:1000px){
  .hamburger{display:flex;}
  .menu-close{display:block;}
  nav.main{
    position:fixed;top:0;right:0;bottom:0;left:0;height:100vh;height:100dvh;
    background:var(--parchment);flex-direction:column;align-items:center;justify-content:center;
    gap:0;padding:32px;
    transform:translateX(100%);transition:transform .28s ease;z-index:200;overflow-y:auto;touch-action:pan-y;
  }
  nav.main.open{transform:translateX(0);}
  nav.main .navlinks{flex-direction:column;align-items:center;gap:6px;width:100%;max-width:320px;margin-bottom:28px;}
  nav.main .navlinks li{width:100%;}
  nav.main a.navlink{display:block;width:100%;text-align:center;padding:15px 4px;font-size:19px;border-bottom:1px solid rgba(28,37,65,.08);}
  nav.main a.navlink.active{border-bottom-color:var(--amber);}
  .lang-switch{width:100%;max-width:320px;}
  .lang-switch summary{width:100%;justify-content:center;padding:10px 14px;font-size:15px;}
  .lang-menu{position:static;box-shadow:none;border:1px solid rgba(28,37,65,.12);margin-top:8px;width:100%;}
  .menu-close{top:20px;right:20px;}
  [dir=rtl] nav.main{transform:translateX(-100%);}
  [dir=rtl] nav.main.open{transform:translateX(0);}
  [dir=rtl] .menu-close{right:auto;left:20px;}
}

/* Persian renders measurably wider than English/Armenian at the same sizing
   (longer words, and Vazirmatn's letterforms run a bit wider than Inter's).
   Rather than force Persian into the mobile menu at desktop widths, give its
   desktop nav slightly more compact spacing so it fits the same way EN/HY do. */
@media (min-width:1001px){
  [dir=rtl] .header-inner{max-width:1120px;padding:12px 16px;}
  [dir=rtl] nav.main{gap:18px;}
  [dir=rtl] nav.main .navlinks{gap:16px;}
  [dir=rtl] nav.main a.navlink{font-size:13.5px;padding:6px 1px;}
  [dir=rtl] .lang-switch summary{padding:6px 10px;}
}
.lang-switch{position:relative;}
.lang-switch summary{list-style:none;cursor:pointer;font-size:13.5px;border:1px solid var(--navy);border-radius:20px;padding:6px 14px;display:flex;align-items:center;gap:6px;color:var(--navy);}
.lang-switch summary::-webkit-details-marker{display:none;}
.lang-switch[open] summary{background:var(--navy);color:var(--parchment);}
.lang-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border:1px solid rgba(28,37,65,.15);border-radius:10px;min-width:150px;box-shadow:0 8px 24px rgba(28,37,65,.12);overflow:hidden;}
[dir=rtl] .lang-menu{right:auto;left:0;}
.lang-menu a{display:block;width:100%;text-align:left;background:none;border:none;padding:10px 14px;font-size:14px;color:var(--charcoal);text-decoration:none;cursor:pointer;}
[dir=rtl] .lang-menu a{text-align:right;}
.lang-menu a:hover{background:var(--parchment);}
.lang-menu a.cur{color:var(--amber-text);font-weight:600;}

/* buttons */
.btn{display:inline-block;background:var(--navy);color:var(--parchment)!important;padding:13px 28px;border-radius:6px;font-weight:500;font-size:14.5px;text-decoration:none;border:1px solid var(--navy);transition:background .15s,color .15s;}
.btn:hover{background:var(--amber);border-color:var(--amber);}
.btn.outline{background:transparent;color:var(--navy)!important;border:1px solid var(--navy);}
.btn.outline:hover{background:var(--navy);color:var(--parchment)!important;}

/* hero */
.hero{padding:clamp(40px,8vw,72px) 0 clamp(32px,6vw,56px);position:relative;overflow:hidden;text-align:center;}
.hero::before{content:'';position:absolute;top:0;left:50%;transform:translateX(-50%);width:820px;height:470px;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1728 991'><path d='M1210.42 75.3632C1195.36 48.5689 1184.66 29.5302 1172.04 0L882.717 630.378L918.925 711.529L1210.42 75.3632Z' fill='%231C2541'/><path d='M847.639 877.111L787.662 990.528L553.86 468.322V813.709C530.385 836.184 508.108 860.084 487.144 885.341V156.039L789.901 832.295L811.884 797.677L847.639 877.111Z' fill='%231C2541'/><path d='M1166.07 924.072L1170.53 483.109L967.391 924.615L936.746 990L906.102 924.615L524.393 78.1645C539.048 52.9983 552.459 27.0406 564.558 0.359375L937.108 830.801L1240.41 171.662L1233.47 856.895L1410.55 855.628C1427.44 878.533 1445.53 900.647 1464.85 921.924L1166.07 924.072Z' fill='%231C2541'/><path d='M1385 294L1395.5 274L1406 294V746L1395.5 766L1385 746V294Z' fill='%231C2541'/><path d='M1305 383.116L1315.5 363L1326 383.116V656.889L1315.5 677L1305 656.889V383.116Z' fill='%231C2541'/><path d='M1627 482.881L1637.5 463L1648 482.881V556.12L1637.5 576.5L1627 556.12V482.881Z' fill='%231C2541'/><path d='M1707 510.255L1717.5 490L1728 510.255V529.613L1717.5 549.5L1707 529.613V510.255Z' fill='%231C2541'/><path d='M1466 367.05L1476.5 347L1487 367.05V673.954L1476.5 693.998L1466 673.954V367.05Z' fill='%231C2541'/><path d='M1546 449L1556.5 429C1560.6 436.811 1562.9 441.19 1567 449V590.028L1556.5 610.242L1546 590.028V449Z' fill='%231C2541'/><path d='M321 294L331.5 274L342 294V746L331.5 766L321 746V294Z' fill='%231C2541'/><path d='M81 482.881L91.5 463L102 482.881V556.12L91.5 576.5L81 556.12V482.881Z' fill='%231C2541'/><path d='M0 510.255L10.5 490L21 510.255V529.613L10.5 549.5L0 529.613V510.255Z' fill='%231C2541'/><path d='M401 383.116L411.5 363L422 383.116V656.889L411.5 677L401 656.889V383.116Z' fill='%231C2541'/><path d='M241 367.05L251.5 347L262 367.05V673.954L251.5 693.998L241 673.954V367.05Z' fill='%231C2541'/><path d='M161 449L171.5 429C175.601 436.811 177.899 441.19 182 449V590.028L171.5 610.242L161 590.028V449Z' fill='%231C2541'/></svg>");background-repeat:no-repeat;background-position:center top;background-size:contain;opacity:.05;pointer-events:none;z-index:0;}
.hero > *{position:relative;z-index:1;}
.eyebrow{font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--amber-text);font-weight:600;margin-bottom:14px;}
.hero h1{font-size:clamp(26px,5.2vw,42px);line-height:1.15;}
.page-h1{font-size:clamp(22px,4.4vw,32px);line-height:1.2;}
.tagline{font-size:19px;color:var(--slate);max-width:560px;margin-bottom:28px;}
.hero-cta-row{display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;}

/* waveform player */
.player{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:var(--navy);border-radius:10px;padding:14px 18px;}

/* ---------- Volume control: icon reveals a slider on hover/tap ---------- */
.vol-control{display:flex;align-items:center;flex-shrink:0;}
.vol-icon-btn{background:none;border:none;padding:2px;cursor:pointer;display:flex;align-items:center;color:rgba(244,239,228,.65);transition:color .15s;}
.vol-icon-btn:hover{color:rgba(244,239,228,.95);}
.vol-icon-btn svg{width:15px;height:15px;}
.vol-slider-wrap{width:0;overflow:hidden;transition:width .2s ease;}
.vol-control:hover .vol-slider-wrap{width:58px;}
.vol-slider{width:52px;margin-inline-start:6px;height:3px;-webkit-appearance:none;appearance:none;background:rgba(244,239,228,.3);border-radius:2px;outline:none;cursor:pointer;}
.vol-slider::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;background:var(--amber);cursor:pointer;}
.vol-slider::-moz-range-thumb{width:11px;height:11px;border:none;border-radius:50%;background:var(--amber);cursor:pointer;}
/* Light-background context (Languages mini-players) */
.mini-player .vol-icon-btn{color:rgba(28,37,65,.5);}
.mini-player .vol-icon-btn:hover{color:rgba(28,37,65,.85);}
.mini-player .vol-slider{background:rgba(28,37,65,.18);}
.demo-transport .vol-icon-btn{color:rgba(28,37,65,.5);}
.demo-transport .vol-icon-btn:hover{color:rgba(28,37,65,.85);}
.demo-transport .vol-slider{background:rgba(28,37,65,.18);}
.play-btn{width:38px;height:38px;border-radius:50%;background:var(--amber);border:none;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--navy);}
.play-btn svg{width:14px;height:14px;}
.wave{display:flex;align-items:center;gap:3px;height:28px;flex:1;}
.player .wave{flex:none;width:150px;}
.wave span{width:3px;background:rgba(244,239,228,.45);border-radius:2px;transition:background .2s;}
.wave.playing span{animation-timing-function:ease-in-out;animation-iteration-count:infinite;}
.wave.playing span.played{background:var(--amber);}
.wave.playing span:nth-child(6n+1){animation-name:wv1;animation-duration:.8s;animation-delay:0s;}
.wave.playing span:nth-child(6n+2){animation-name:wv2;animation-duration:1.05s;animation-delay:.12s;}
.wave.playing span:nth-child(6n+3){animation-name:wv3;animation-duration:.9s;animation-delay:.28s;}
.wave.playing span:nth-child(6n+4){animation-name:wv1;animation-duration:1.0s;animation-delay:.06s;}
.wave.playing span:nth-child(6n+5){animation-name:wv2;animation-duration:.75s;animation-delay:.32s;}
.wave.playing span:nth-child(6n){animation-name:wv3;animation-duration:1.15s;animation-delay:.18s;}
@keyframes wv1{0%,100%{transform:scaleY(.35);}50%{transform:scaleY(1);}}
@keyframes wv2{0%,100%{transform:scaleY(.5);}50%{transform:scaleY(.7);}}
@keyframes wv3{0%,100%{transform:scaleY(.25);}50%{transform:scaleY(.85);}}
.player-label{font-size:11px;color:rgba(244,239,228,.6);white-space:nowrap;}

/* sections */
section{padding:56px 0;}
section.alt{background:var(--parchment);}
.section-head{max-width:640px;margin-bottom:32px;}
.section-head .eyebrow{margin-bottom:10px;}

/* intro */
.intro-text{font-size:17px;max-width:680px;color:var(--charcoal);}

/* language strip */
.lang-strip{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;}
.lang-chip{border:1px solid rgba(28,37,65,.18);border-radius:24px;padding:10px 20px 10px 22px;font-family:var(--font-display);font-weight:600;color:var(--navy);font-size:14.5px;background:#fff;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:border-color .18s,color .18s,transform .18s;}
.lang-chip:hover{border-color:var(--amber);color:var(--amber-text);transform:translateY(-1px);}
.lang-chip .arrow{font-size:12px;opacity:.4;transition:opacity .18s,transform .18s;}
.lang-chip:hover .arrow{opacity:1;transform:translateX(2px);}
.lang-card.hl{border-color:var(--amber);box-shadow:0 0 0 3px rgba(192,138,61,.16);}

/* work grid */
.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;}
.work-card{background:#fff;border-radius:12px;overflow:hidden;border:1px solid rgba(28,37,65,.1);}
.work-thumb{aspect-ratio:16/9;background:linear-gradient(135deg,#1C2541,#2b3a63);display:flex;align-items:center;justify-content:center;position:relative;}
.work-video{width:100%;aspect-ratio:16/9;display:block;background:#000;}
.work-thumb .play-tri{width:52px;height:52px;border-radius:50%;background:rgba(244,239,228,.15);border:1.5px solid rgba(244,239,228,.5);display:flex;align-items:center;justify-content:center;}
.work-thumb .play-tri svg{width:16px;height:16px;fill:var(--parchment);margin-left:2px;}
.work-thumb .placeholder-tag{position:absolute;bottom:10px;left:10px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgba(244,239,228,.65);background:rgba(0,0,0,.25);padding:3px 8px;border-radius:4px;}
.work-body{padding:20px;}
.work-tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--amber-text);font-weight:600;margin-bottom:6px;}
.work-title{font-family:var(--font-display);font-size:18px;font-weight:600;color:var(--navy);margin-bottom:8px;min-height:2.5em;line-height:1.25;}
.work-desc{font-size:14px;color:var(--slate);margin-bottom:12px;}
.work-link{font-size:13.5px;font-weight:500;color:var(--navy);text-decoration:none;border-bottom:1px solid var(--amber);padding-bottom:1px;}

/* testimonial */
.testimonial{background:var(--navy);color:var(--parchment);border-radius:12px;padding:40px;}
.testimonial-carousel .testimonial{display:none;}
.testimonial-carousel .testimonial.active{display:block;}
.testimonial-dots{display:flex;justify-content:center;gap:10px;margin-top:18px;}
.testimonial-dots .dot{width:9px;height:9px;border-radius:50%;background:rgba(28,37,65,.2);border:none;padding:0;cursor:pointer;transition:background .2s,transform .2s;}
.testimonial-dots .dot.active{background:var(--amber);transform:scale(1.15);}
.testimonial q{font-family:var(--font-display);font-size:19px;line-height:1.55;display:block;quotes:none;margin-bottom:18px;}
.testimonial q::before,.testimonial q::after{content:none;}
.testimonial cite{font-style:normal;font-size:13.5px;color:rgba(244,239,228,.7);}
.testimonial cite b{color:var(--amber);}
.testimonial cite a{color:rgba(244,239,228,.7);text-decoration:underline;text-underline-offset:2px;text-decoration-color:rgba(244,239,228,.35);transition:color .15s,text-decoration-color .15s;}
.testimonial cite a:hover{color:var(--amber);text-decoration-color:var(--amber);}
.dots{display:flex;gap:8px;margin-top:20px;}
.dots button{width:8px;height:8px;border-radius:50%;border:none;background:rgba(28,37,65,.25);padding:0;}
.dots button.active{background:var(--amber);}

/* closing cta */
.cta-band{background:var(--navy);color:var(--parchment);text-align:center;padding:64px 24px;border-radius:12px;}
.cta-band h2{color:var(--parchment);}
.cta-band p{color:rgba(244,239,228,.75);max-width:480px;margin:0 auto 24px;}

/* footer */
footer.site{border-top:1px solid rgba(28,37,65,.15);padding:40px 0 28px;margin-top:24px;}
.footer-inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;}
.footer-links{display:flex;gap:18px;align-items:center;flex-wrap:wrap;}
.footer-links a{font-size:13px;color:var(--slate);text-decoration:none;}
.footer-links a:hover{color:var(--navy);}
.social-icon{display:flex;align-items:center;color:var(--slate);transition:color .15s;}
.social-icon:hover{color:var(--navy);}
.copyright{font-size:12.5px;color:var(--slate);margin-top:16px;}

/* languages page cards */
.lang-card{background:#fff;border:1px solid rgba(28,37,65,.1);border-radius:12px;padding:28px;margin-bottom:20px;}
.lang-card-head{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-bottom:12px;}
.badge{font-size:11px;letter-spacing:.06em;text-transform:uppercase;font-weight:600;padding:5px 12px;border-radius:20px;}
.badge.native{background:rgba(192,138,61,.15);color:#8a5f24;}
.badge.pro{background:rgba(28,37,65,.08);color:var(--navy);}
.lang-card p{font-size:15px;color:var(--charcoal);}
.mini-player{display:flex;align-items:center;gap:10px;margin-top:14px;background:var(--parchment);border:1px solid rgba(28,37,65,.12);border-radius:8px;padding:8px 12px;width:fit-content;}
.mini-player .play-btn{width:28px;height:28px;background:var(--navy);color:var(--amber);}
.mini-player .play-btn svg{width:10px;height:10px;}
.mini-player .wave{height:18px;flex:none;}
.mini-player .wave span{background:rgba(28,37,65,.25);}
.mini-player .wave.playing span.played{background:var(--amber);}
.mini-note{font-size:11.5px;color:var(--slate);}

/* about */
.about-layout{display:grid;grid-template-columns:220px 1fr;gap:40px;align-items:start;}
@media (max-width:640px){.about-layout{grid-template-columns:1fr;}}
.about-section{position:relative;overflow:hidden;}
.about-section::before{content:'';position:absolute;top:-60px;left:-140px;width:520px;height:auto;aspect-ratio:1728/991;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1728 991'><path d='M1210.42 75.3632C1195.36 48.5689 1184.66 29.5302 1172.04 0L882.717 630.378L918.925 711.529L1210.42 75.3632Z' fill='%231C2541'/><path d='M847.639 877.111L787.662 990.528L553.86 468.322V813.709C530.385 836.184 508.108 860.084 487.144 885.341V156.039L789.901 832.295L811.884 797.677L847.639 877.111Z' fill='%231C2541'/><path d='M1166.07 924.072L1170.53 483.109L967.391 924.615L936.746 990L906.102 924.615L524.393 78.1645C539.048 52.9983 552.459 27.0406 564.558 0.359375L937.108 830.801L1240.41 171.662L1233.47 856.895L1410.55 855.628C1427.44 878.533 1445.53 900.647 1464.85 921.924L1166.07 924.072Z' fill='%231C2541'/><path d='M1385 294L1395.5 274L1406 294V746L1395.5 766L1385 746V294Z' fill='%231C2541'/><path d='M1305 383.116L1315.5 363L1326 383.116V656.889L1315.5 677L1305 656.889V383.116Z' fill='%231C2541'/><path d='M1627 482.881L1637.5 463L1648 482.881V556.12L1637.5 576.5L1627 556.12V482.881Z' fill='%231C2541'/><path d='M1707 510.255L1717.5 490L1728 510.255V529.613L1717.5 549.5L1707 529.613V510.255Z' fill='%231C2541'/><path d='M1466 367.05L1476.5 347L1487 367.05V673.954L1476.5 693.998L1466 673.954V367.05Z' fill='%231C2541'/><path d='M1546 449L1556.5 429C1560.6 436.811 1562.9 441.19 1567 449V590.028L1556.5 610.242L1546 590.028V449Z' fill='%231C2541'/><path d='M321 294L331.5 274L342 294V746L331.5 766L321 746V294Z' fill='%231C2541'/><path d='M81 482.881L91.5 463L102 482.881V556.12L91.5 576.5L81 556.12V482.881Z' fill='%231C2541'/><path d='M0 510.255L10.5 490L21 510.255V529.613L10.5 549.5L0 529.613V510.255Z' fill='%231C2541'/><path d='M401 383.116L411.5 363L422 383.116V656.889L411.5 677L401 656.889V383.116Z' fill='%231C2541'/><path d='M241 367.05L251.5 347L262 367.05V673.954L251.5 693.998L241 673.954V367.05Z' fill='%231C2541'/><path d='M161 449L171.5 429C175.601 436.811 177.899 441.19 182 449V590.028L171.5 610.242L161 590.028V449Z' fill='%231C2541'/></svg>");background-repeat:no-repeat;background-size:contain;opacity:.06;pointer-events:none;z-index:0;}
.about-section > *{position:relative;z-index:1;}
[dir=rtl] .about-section::before{left:auto;right:-140px;}
.contact-section{position:relative;overflow:hidden;}
.contact-section::before{content:'';position:absolute;bottom:-110px;right:-90px;width:400px;height:auto;aspect-ratio:1728/991;background-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1728 991'><path d='M1210.42 75.3632C1195.36 48.5689 1184.66 29.5302 1172.04 0L882.717 630.378L918.925 711.529L1210.42 75.3632Z' fill='%231C2541'/><path d='M847.639 877.111L787.662 990.528L553.86 468.322V813.709C530.385 836.184 508.108 860.084 487.144 885.341V156.039L789.901 832.295L811.884 797.677L847.639 877.111Z' fill='%231C2541'/><path d='M1166.07 924.072L1170.53 483.109L967.391 924.615L936.746 990L906.102 924.615L524.393 78.1645C539.048 52.9983 552.459 27.0406 564.558 0.359375L937.108 830.801L1240.41 171.662L1233.47 856.895L1410.55 855.628C1427.44 878.533 1445.53 900.647 1464.85 921.924L1166.07 924.072Z' fill='%231C2541'/><path d='M1385 294L1395.5 274L1406 294V746L1395.5 766L1385 746V294Z' fill='%231C2541'/><path d='M1305 383.116L1315.5 363L1326 383.116V656.889L1315.5 677L1305 656.889V383.116Z' fill='%231C2541'/><path d='M1627 482.881L1637.5 463L1648 482.881V556.12L1637.5 576.5L1627 556.12V482.881Z' fill='%231C2541'/><path d='M1707 510.255L1717.5 490L1728 510.255V529.613L1717.5 549.5L1707 529.613V510.255Z' fill='%231C2541'/><path d='M1466 367.05L1476.5 347L1487 367.05V673.954L1476.5 693.998L1466 673.954V367.05Z' fill='%231C2541'/><path d='M1546 449L1556.5 429C1560.6 436.811 1562.9 441.19 1567 449V590.028L1556.5 610.242L1546 590.028V449Z' fill='%231C2541'/><path d='M321 294L331.5 274L342 294V746L331.5 766L321 746V294Z' fill='%231C2541'/><path d='M81 482.881L91.5 463L102 482.881V556.12L91.5 576.5L81 556.12V482.881Z' fill='%231C2541'/><path d='M0 510.255L10.5 490L21 510.255V529.613L10.5 549.5L0 529.613V510.255Z' fill='%231C2541'/><path d='M401 383.116L411.5 363L422 383.116V656.889L411.5 677L401 656.889V383.116Z' fill='%231C2541'/><path d='M241 367.05L251.5 347L262 367.05V673.954L251.5 693.998L241 673.954V367.05Z' fill='%231C2541'/><path d='M161 449L171.5 429C175.601 436.811 177.899 441.19 182 449V590.028L171.5 610.242L161 590.028V449Z' fill='%231C2541'/></svg>");background-repeat:no-repeat;background-size:contain;opacity:.06;pointer-events:none;z-index:0;}
.contact-section > *{position:relative;z-index:1;}
.headshot-photo{width:100%;aspect-ratio:4/5;border-radius:12px;position:relative;overflow:hidden;}
.headshot-photo img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0;transition:opacity .35s ease;}
.headshot-photo img.hover-img{opacity:0;}
@media (hover: hover) and (pointer: fine){
  .headshot-photo:hover img.hover-img{opacity:1;}
  .headshot-photo:hover img.main-img{opacity:0;}
}

/* pending note */
.pending{border:1px dashed rgba(28,37,65,.3);border-radius:12px;padding:28px;background:rgba(255,255,255,.5);}
.pending .eyebrow{color:var(--slate);}

/* contact */
.contact-layout{max-width:560px;margin:0 auto;}
.contact-card{background:#fff;border:1px solid rgba(28,37,65,.1);border-radius:12px;padding:36px;}
.faq-section{max-width:720px;margin:64px auto 0;}
.faq-list{display:flex;flex-direction:column;gap:4px;}
.faq-item{border-radius:8px;transition:background .2s;}
.faq-item:nth-child(odd){background:rgba(28,37,65,.025);}
.faq-item.open{background:rgba(192,138,61,.07);}
.faq-q{margin:0;}
.faq-btn{display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:16px 18px;font-family:var(--font-display);font-size:16px;font-weight:600;color:var(--navy);}
[dir=rtl] .faq-btn{text-align:right;}
.faq-icon{font-size:20px;line-height:1;color:var(--amber-text);flex-shrink:0;transition:transform .2s;}
.faq-item.open .faq-icon{transform:rotate(45deg);}
.faq-a{font-size:14.5px;line-height:1.7;color:var(--charcoal);margin:0;padding:0 18px 16px;}
.field{margin-bottom:18px;}
.field label{display:block;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--navy);margin-bottom:6px;}
.field input,.field select,.field textarea{width:100%;padding:11px 13px;border:1px solid rgba(28,37,65,.25);border-radius:6px;font-family:inherit;font-size:14.5px;background:var(--parchment);color:var(--charcoal);}
.field textarea{min-height:120px;resize:vertical;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media (max-width:560px){.field-row{grid-template-columns:1fr;}}
.btn-full{width:100%;text-align:center;background:var(--amber);border-color:var(--amber);color:var(--navy)!important;padding:15px 28px;font-weight:600;}
.also-email{text-align:center;margin-top:28px;}
.also-email .lbl{color:var(--slate);font-size:14px;margin-bottom:4px;}
.also-email .addr{font-weight:600;color:var(--navy);}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.confirm-msg{display:none;background:rgba(192,138,61,.15);border:1px solid rgba(192,138,61,.4);color:#6e4a1a;padding:14px 16px;border-radius:8px;font-size:14px;margin-top:14px;}
.confirm-msg.show{display:block;}
.confirm-msg.error-msg{background:rgba(178,58,58,.1);border-color:rgba(178,58,58,.35);color:#8a2f2f;}
.privacy-note{font-size:12.5px;color:var(--slate);margin-top:16px;text-align:center;}

/* demos placeholder */
.demo-genre-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px;}
.demo-genre-row span{font-size:13px;border:1px solid rgba(28,37,65,.2);color:var(--slate);padding:6px 14px;border-radius:20px;}

[dir=rtl] .work-thumb .play-tri svg{margin-left:0;margin-right:2px;}
[dir=rtl] .about-layout{direction:rtl;}
.demo-player-shell{display:grid;grid-template-columns:300px 1fr;gap:0;border:1px solid rgba(28,37,65,.1);border-radius:12px;overflow:hidden;background:#fff;margin-top:24px;}
.demo-list-col{border-right:1px solid rgba(28,37,65,.1);display:flex;flex-direction:column;max-height:420px;}
.demo-tabs{display:flex;gap:6px;padding:12px 14px;border-bottom:1px solid rgba(28,37,65,.08);flex-wrap:wrap;position:sticky;top:0;background:#fff;z-index:2;}
.demo-tab{font-family:var(--font-body);font-size:11px;font-weight:600;color:var(--slate);background:none;border:none;padding:6px 10px;border-radius:20px;cursor:pointer;}
.demo-tab.active{color:var(--navy);background:rgba(192,138,61,.15);}
.demo-track-list{overflow-y:auto;flex:1;}
.demo-track-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;padding:11px 14px;background:none;border:none;border-left:3px solid transparent;cursor:pointer;}
.demo-track-row:hover{background:rgba(28,37,65,.03);}
.demo-track-row.active{background:rgba(192,138,61,.08);border-left-color:var(--amber);}
.demo-track-icon{width:16px;height:16px;color:var(--slate);flex-shrink:0;}
.demo-track-row.active .demo-track-icon{color:var(--amber-text);}
.demo-track-icon svg{width:100%;height:100%;}
.demo-track-meta{display:flex;flex-direction:column;gap:2px;min-width:0;}
.demo-track-title{font-family:var(--font-body);font-size:12.5px;font-weight:600;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.demo-track-sub{font-family:var(--font-body);font-size:10.5px;color:var(--slate);}
.demo-player-col{padding:30px 32px;display:flex;flex-direction:column;justify-content:center;min-height:200px;}
.demo-idle{font-family:var(--font-body);font-size:13.5px;color:var(--slate);text-align:center;}
.demo-now-tag{font-family:var(--font-body);font-size:10px;letter-spacing:.4px;color:var(--amber-text);font-weight:600;margin-bottom:6px;}
.demo-now-title{font-family:var(--font-display);font-size:19px;color:var(--navy);margin-bottom:20px;}
.demo-transport{display:flex;align-items:center;gap:14px;}
.demo-transport .play-btn{width:38px;height:38px;flex-shrink:0;}
.demo-scrub{flex:1;height:4px;background:rgba(28,37,65,.12);border-radius:2px;cursor:pointer;position:relative;}
.demo-scrub-fill{height:100%;width:0%;background:var(--amber);border-radius:2px;}
.demo-times{display:flex;gap:6px;font-family:var(--font-body);font-size:10.5px;color:var(--slate);flex-shrink:0;}
@media (max-width:720px){
  .demo-player-shell{grid-template-columns:1fr;}
  .demo-list-col{border-right:none;border-bottom:1px solid rgba(28,37,65,.1);max-height:300px;}
  .demo-player-col.has-track{position:fixed;left:0;right:0;bottom:0;background:#fff;border-top:1px solid rgba(28,37,65,.12);box-shadow:0 -8px 24px rgba(28,37,65,.1);padding:16px 20px;z-index:80;min-height:auto;}
  .demo-now-title{font-size:15px;margin-bottom:10px;}
  .demo-now-tag{margin-bottom:3px;}
}

@media (max-width:600px){
  .wrap{padding:0 18px;}
  .header-inner{padding:10px 18px;}
  .logo-mark{height:38px;}
  .testimonial{padding:26px 22px;}
  .cta-band{padding:44px 20px;}
  .contact-card{padding:24px 20px;}
  .about-layout{gap:24px;}
  .work-grid{gap:16px;}
  .lang-card{padding:18px;}
  .section-head{margin-bottom:22px;}
  .footer-inner{flex-direction:column;align-items:center;text-align:center;gap:18px;}
  .copyright{text-align:center;}
  .footer-inner > div:first-child{display:flex;justify-content:center;width:100%;}
  .footer-links{display:inline-flex;}
}
@media (max-height:480px) and (orientation:landscape){
  .hero{padding:22px 0 20px;}
  .hero::before{display:none;}
  .preview-banner{display:none;}
}
@media (min-width:601px) and (max-width:900px){
  .about-layout{grid-template-columns:180px 1fr;}
  .work-grid{grid-template-columns:repeat(2,1fr);}
}
/* ---------- Page transition, subtle cross-fade between pages ---------- */
@view-transition {
  navigation: auto;
}
::view-transition-old(root),
::view-transition-new(root) {
  animation-duration: 0.22s;
  animation-timing-function: ease;
}
::view-transition-old(root) {
  animation-name: vt-fade-out;
}
::view-transition-new(root) {
  animation-name: vt-fade-in;
}
@keyframes vt-fade-out {
  from { opacity: 1; }
  to { opacity: 0; }
}
@keyframes vt-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}
/* Fallback fade-in for browsers without View Transitions support */
body {
  animation: body-fade-in 0.25s ease;
}
@keyframes body-fade-in {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* Prevent casual image dragging (e.g. drag-to-desktop to save) site-wide */
img{-webkit-user-drag:none;user-drag:none;}

/* Off Mic */
.offmic-intro{margin-bottom:8px;}
.offmic-list{border-top:.5px solid rgba(28,37,65,.12);margin-top:8px;}
.offmic-entry{display:flex;gap:16px;padding:20px 0;border-bottom:.5px solid rgba(28,37,65,.12);align-items:baseline;}
.offmic-entry a{text-decoration:none;display:flex;gap:16px;width:100%;color:inherit;}
.offmic-entry:hover .offmic-entry-title{color:var(--amber-text);}
.offmic-tag{font-size:11px;font-weight:600;letter-spacing:.03em;color:var(--slate);min-width:78px;flex-shrink:0;line-height:1.4;}
.offmic-tag.milestone{color:var(--amber-text);}
.offmic-entry-body{flex:1;min-width:0;}
.offmic-entry-date{display:block;font-size:12px;line-height:1.4;color:var(--slate);margin:0 0 9px;}
.offmic-entry-title{display:block;font-family:var(--font-display);font-size:16px;color:var(--navy);margin:0 0 4px;transition:color .15s;}
.offmic-entry-teaser{display:block;font-size:13px;color:var(--slate);margin:0;}
@media (max-width:600px){
  .offmic-entry, .offmic-entry a{gap:10px;}
  .offmic-tag{min-width:60px;font-size:10.5px;}
}

/* Off Mic — single post */
.offmic-back{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--slate);text-decoration:none;margin-bottom:24px;}
.offmic-back:hover{color:var(--navy);}
.offmic-post-meta{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;}
.offmic-post-meta .offmic-tag{min-width:0;font-size:11px;padding-top:0;}
.offmic-post-meta .sep{color:var(--slate);}
.offmic-post-meta .offmic-post-date{color:var(--slate);}
.offmic-post-body p{font-size:15px;line-height:1.75;color:var(--charcoal);margin:0 0 16px;}
.offmic-featured-img{width:100%;height:auto;border-radius:12px;margin:20px 0 32px;display:block;}
.offmic-post-divider{border:none;border-top:.5px solid rgba(28,37,65,.15);margin:32px 0 24px;}
.offmic-more-label{font-size:12px;color:var(--slate);letter-spacing:.03em;margin:0 0 12px;}
.offmic-more-list{display:flex;flex-direction:column;gap:12px;}
.offmic-more-list a{display:flex;gap:10px;align-items:baseline;text-decoration:none;color:inherit;}
.offmic-more-list a:hover .offmic-more-title{color:var(--amber-text);}
.offmic-more-list .offmic-tag{min-width:56px;font-size:11px;}
.offmic-more-title{font-family:var(--font-display);font-size:14px;color:var(--navy);transition:color .15s;}
.offmic-emphasis{font-family:var(--font-display);font-style:italic;font-size:17px;color:var(--navy);line-height:1.6;margin:28px 0 !important;}
.offmic-embed-block{margin-top:8px;}
.offmic-embed-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--amber-text);margin:0 0 10px;}
.offmic-embed-card{background:#fff;border:1px solid rgba(28,37,65,.12);border-radius:10px;padding:14px;}
.offmic-embed-card iframe{display:block;width:100%;border:0;border-radius:8px;}
.offmic-embed-caption{font-size:12.5px;color:var(--slate);margin:10px 0 0;text-align:center;}

/* ---------- Respect reduced-motion preference ---------- */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    scroll-behavior: auto !important;
  }
}

/* ---------- Skip to main content link ---------- */
.skip-link{position:absolute;top:-100px;left:12px;background:var(--navy);color:var(--parchment);padding:10px 18px;border-radius:6px;font-size:14px;font-weight:600;z-index:1000;text-decoration:none;transition:top .2s;}
.skip-link:focus{top:12px;}
