:root{
  --paper:#f5efe5;
  --paper-2:#efe7db;
  --paper-3:#eae1d3;
  --ink:#26231d;
  --muted:#686052;
  --line:rgba(38,35,29,.12);
  --line-strong:rgba(38,35,29,.22);
  --gold:#b59354;
  --gold-soft:#d8c08d;
  --gold-deep:#8f6f35;
  --dark:#111214;
  --dark-2:#1c1c21;
  --shadow:0 18px 44px rgba(10,10,10,.14);
  --shadow-soft:0 10px 30px rgba(10,10,10,.08);
  --radius:26px;
  --ease:cubic-bezier(.22,.78,.16,1);
  --header-h:86px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{
  margin:0;
  color:var(--ink);
  background:linear-gradient(180deg,var(--paper),var(--paper-2) 55%,var(--paper-3));
  font-family:Baskerville,"Iowan Old Style","Palatino Linotype",Georgia,serif;
  min-height:100vh;
  overflow-x:hidden;
  position:relative;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  background:url("../images/paper-texture.webp") center/cover no-repeat;
  opacity:.20;
  mix-blend-mode:multiply;
  pointer-events:none;
  z-index:-2;
}
body::after{
  content:"";
  position:fixed;
  inset:0;
  background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 16%), radial-gradient(circle at 18% 7%, rgba(255,255,255,.42), transparent 24rem);
  pointer-events:none;
  z-index:-1;
}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.main{min-height:calc(100vh - var(--header-h))}
.container{width:min(1220px, calc(100% - 56px));margin:0 auto}
.container-tight{width:min(1080px, calc(100% - 56px));margin:0 auto}

@keyframes floatSlow{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@keyframes glowPulse{0%,100%{opacity:.22}50%{opacity:.5}}
@keyframes revealUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}
@keyframes borderSpin{to{transform:rotate(1turn)}}
@keyframes sunMove{0%,100%{opacity:.54;transform:scale(1) rotate(-.2deg)}50%{opacity:.76;transform:scale(1.035) rotate(.35deg)}}
@keyframes coverSoftFocusOut{
  0%{opacity:.92}
  38%{opacity:.78}
  100%{opacity:0}
}
@keyframes coverCrispIn{
  0%{opacity:0}
  28%{opacity:.14}
  62%{opacity:.72}
  100%{opacity:1}
}
@keyframes typeCursor{0%,48%{opacity:1}49%,100%{opacity:0}}

.reveal{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.reveal.visible{opacity:1;transform:none}
.display{font-weight:400;letter-spacing:.02em}
.serif-title{font-weight:400;letter-spacing:.02em}

.site-header{
  position:sticky;top:0;z-index:50;height:var(--header-h);
  border-bottom:1px solid rgba(38,35,29,.08);
  background:rgba(245,239,229,.78);
  backdrop-filter:blur(12px) saturate(108%);
  -webkit-backdrop-filter:blur(12px) saturate(108%);
}
.site-header.scrolled{box-shadow:0 12px 30px rgba(10,10,10,.06)}
.nav-shell{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{
  font-size:clamp(2rem,2.8vw,3.05rem);
  line-height:1; letter-spacing:.015em;
  color:#5d5a57;
  flex:0 0 auto;
}
.nav-links{display:flex;align-items:center;gap:44px}
.nav-link{font-size:1.15rem;position:relative;padding:10px 0;color:#37342f}
.nav-link::after{
  content:"";position:absolute;left:0;right:100%;bottom:-4px;height:2px;
  background:linear-gradient(90deg,var(--gold),var(--gold-soft));transition:right .35s var(--ease)
}
.nav-link:hover::after,.nav-link.active::after{right:0}
.nav-toggle{display:none;background:none;border:0;width:44px;height:44px;padding:0;cursor:pointer;color:var(--ink)}
.nav-toggle span{display:block;width:24px;height:1.8px;background:currentColor;margin:5px auto;transition:.3s var(--ease)}
.nav-toggle.open span:nth-child(1){transform:translateY(6.7px) rotate(45deg)}
.nav-toggle.open span:nth-child(2){opacity:0}
.nav-toggle.open span:nth-child(3){transform:translateY(-6.7px) rotate(-45deg)}
.mobile-panel{
  display:none;position:fixed;top:var(--header-h);left:16px;right:16px;z-index:49;
  background:rgba(245,239,229,.97);border:1px solid rgba(181,147,84,.16);
  border-radius:24px;padding:14px 22px 18px;box-shadow:var(--shadow);transform:translateY(-14px);opacity:0;pointer-events:none;
  transition:transform .35s var(--ease),opacity .35s var(--ease)
}
.mobile-panel.open{transform:none;opacity:1;pointer-events:auto}
.mobile-panel a{display:block;padding:14px 0;border-bottom:1px solid var(--line);font-size:1.08rem}
.mobile-panel a:last-child{border-bottom:0}

.page{padding:32px 0 0}
.home-page{position:relative;overflow:hidden}
.home-page .sunrays{
  position:absolute;top:-34px;left:0;width:min(920px,82vw);height:570px;pointer-events:none;z-index:0;
  transform-origin:8% 0%;
  background:
    radial-gradient(circle at 8% 0%, rgba(255,252,231,.96) 0 12px, rgba(255,248,211,.58) 34px, rgba(255,246,210,.20) 76px, transparent 132px),
    repeating-conic-gradient(from 96deg at 8% 0%, transparent 0deg 8deg, rgba(255,255,255,.23) 8deg 11.5deg, transparent 11.5deg 20deg);
  -webkit-mask-image:radial-gradient(ellipse 100% 95% at 8% 0%, #000 0 56%, rgba(0,0,0,.72) 72%, transparent 100%);
  mask-image:radial-gradient(ellipse 100% 95% at 8% 0%, #000 0 56%, rgba(0,0,0,.72) 72%, transparent 100%);
  filter:blur(5px);
  mix-blend-mode:screen;opacity:.70;animation:sunMove 9s ease-in-out infinite;
}
.hero-area{position:relative;z-index:1;padding:26px 0 0}
.hero-cover-wrap{
  position:relative;display:flex;justify-content:center;
  opacity:1;transform:scale(.986) translateZ(0);
  transition:transform 2.8s cubic-bezier(.18,.72,.2,1);
  will-change:transform;
}
.hero-cover-wrap.cover-ready{transform:scale(1) translateZ(0)}
.hero-cover-blur{
  position:absolute;inset:0;margin:auto;width:min(880px,88vw);height:auto;
  opacity:.92;pointer-events:none;transform:translateZ(0);will-change:opacity;
  filter:drop-shadow(0 16px 30px rgba(0,0,0,.04));
}
.hero-cover-wrap.cover-ready .hero-cover-blur{animation:coverSoftFocusOut 2.85s cubic-bezier(.18,.72,.2,1) .08s both}
.hero-cover{
  width:min(880px,88vw);height:auto;opacity:0;transform:translateZ(0);will-change:opacity,transform;
  filter:drop-shadow(0 16px 30px rgba(0,0,0,.08));
}
.hero-cover-wrap.cover-ready .hero-cover{
  animation:coverCrispIn 2.85s cubic-bezier(.18,.72,.2,1) .08s both, floatSlow 9s ease-in-out 2.95s infinite;
}
.hero-copy{margin-top:-18px;text-align:center;position:relative;z-index:2}
.teaser{max-width:800px;margin:0 auto;font-size:clamp(1.22rem,2.1vw,1.7rem);line-height:1.65;color:#3d3933}
.teaser p{margin:.05em 0}
.typewriter-line,.typewriter-paragraph{position:relative}
.typewriter-line.typing::after,.typewriter-paragraph.typing::after{
  content:"";display:inline-block;width:1px;height:.92em;margin-left:4px;vertical-align:-.05em;
  background:var(--gold-deep);animation:typeCursor .78s steps(1,end) infinite;
}
.parallax-skyline{will-change:transform;transform:translate3d(0,var(--parallax-y,0px),0)}
.home-skyline{margin:-10px auto 0;max-width:1100px;opacity:.38;filter:blur(.15px)}
.button-row{display:flex;justify-content:center;margin:16px 0 0}

.cta-btn{
  --pad-y:19px;--pad-x:38px;
  position:relative;display:inline-flex;align-items:center;justify-content:center;gap:14px;
  padding:var(--pad-y) var(--pad-x); min-width:320px;
  background:linear-gradient(180deg,#23252a,#111316);
  color:#f4ead0;font-size:1.05rem;letter-spacing:.04em;text-transform:uppercase;
  border-radius:14px;border:1px solid rgba(255,255,255,.08);
  box-shadow:0 14px 26px rgba(16,16,18,.22), inset 0 1px 0 rgba(255,255,255,.08);
  transform:translateZ(0); transition:transform .26s var(--ease), box-shadow .26s var(--ease), color .26s ease;
  isolation:isolate; overflow:hidden;
}
.cta-btn::before{
  content:"";position:absolute;inset:-1.5px;border-radius:15px;padding:1.6px;
  background:linear-gradient(120deg, var(--gold-deep) 0%, var(--gold-soft) 48%, var(--gold) 68%, var(--gold-deep) 100%);
  -webkit-mask:linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite:xor; mask-composite:exclude;
  opacity:.86; z-index:-1; transform:none;
}
.cta-btn::after{
  content:"";position:absolute;left:-48%;top:-180%;width:38%;height:420%;
  background:linear-gradient(90deg,rgba(255,255,255,0),rgba(247,229,176,.55),rgba(255,255,255,0));
  transform:rotate(18deg);opacity:.55;transition:left .7s var(--ease)
}
.cta-btn:hover{transform:scale(1.045);box-shadow:0 18px 34px rgba(16,16,18,.28), inset 0 1px 0 rgba(255,255,255,.08)}
.cta-btn:hover::after{left:118%}
.cta-btn:hover::before{opacity:1}
.cta-btn:active{transform:scale(.985)}
.cta-btn .arrow{width:16px;height:16px;flex:0 0 auto}

.footer{
  margin-top:16px;
  background:linear-gradient(180deg,#202126 0%, #111214 100%);
  color:#f5ead0;
  border-top:1px solid rgba(181,147,84,.36);
  position:relative;
}
.footer::before{
  content:"";position:absolute;left:50%;top:-11px;transform:translateX(-50%);width:42px;height:22px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 22'%3E%3Cg fill='none' stroke='%23b59354' stroke-width='1.2'%3E%3Cpath d='M21 1v20'/%3E%3Cpath d='M14 4v14'/%3E%3Cpath d='M28 4v14'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;
}
.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 0 24px}
.footer-copy{font-size:1rem;color:#efe2c3}
.socials{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.social-link{display:inline-flex;align-items:center;gap:10px;color:#e8d4a4;font-size:1rem;transition:transform .25s var(--ease),color .25s ease}
.social-link:hover{transform:translateY(-1px);color:#f4e6bf}
.social-link + .social-link{position:relative;padding-left:18px}
.social-link + .social-link::before{content:"";position:absolute;left:0;top:50%;width:1px;height:24px;transform:translateY(-50%);background:rgba(216,192,141,.55)}
.social-icon{width:24px;height:24px;display:block;transition:filter .25s ease,transform .25s var(--ease)}
.social-link:hover .social-icon{filter:brightness(1.16);transform:scale(1.04)}

.page-hero{padding:28px 0 8px;position:relative}
.page-hero.center{text-align:center}
.page-kicker{display:flex;align-items:center;justify-content:center;gap:18px;margin:10px 0 14px;color:var(--gold);letter-spacing:.14em;text-transform:uppercase;font-size:1.05rem}
.page-kicker::before,.page-kicker::after{content:"";width:80px;height:1px;background:linear-gradient(90deg, transparent, var(--gold), transparent)}
.hero-marker{width:20px;height:110px;margin:0 auto 10px;position:relative}
.hero-marker::before,.hero-marker::after{content:"";position:absolute;top:0;bottom:0;width:2px;background:linear-gradient(180deg,rgba(38,35,29,.05),#35312a,rgba(38,35,29,.05))}
.hero-marker::before{left:4px}
.hero-marker::after{right:4px}
.page-title{font-size:clamp(3rem,6.5vw,6rem);line-height:.95;margin:0;color:#3c3933}

.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:40px;align-items:start;margin:16px auto 72px}
.about-copy h1{font-size:clamp(2.8rem,5vw,5.2rem);line-height:1;margin:0 0 12px;color:#38342f}
.divider{display:flex;align-items:center;gap:12px;color:var(--gold);margin:0 0 22px}
.divider::before,.divider::after{content:"";height:1px;background:rgba(181,147,84,.56);flex:1}
.divider .marks{width:22px;height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16'%3E%3Cg stroke='%23b59354' stroke-width='1.2'%3E%3Cpath d='M11 0v16'/%3E%3Cpath d='M5 3v10'/%3E%3Cpath d='M17 3v10'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat;display:block;flex:0 0 auto}
.about-copy p{font-size:1.28rem;line-height:1.72;margin:0;color:#3e3a34;max-width:580px}
.about-visual{
  position:relative;
}
.about-visual .skyline-bg{position:absolute;top:0;right:0;left:8%;opacity:.58}
.about-visual .pool-graphic{
  position:relative;
  right:auto;
  top:0;
	bottom:auto;
  width:min(700px,100%);
  margin:0px auto;
  filter:drop-shadow(0 12px 22px rgba(0,0,0,.08));
}
.side-marker{position:absolute;left:-38px;top:28px;width:16px;height:370px}
.side-marker::before,.side-marker::after{content:"";position:absolute;left:7px;width:2px;background:linear-gradient(180deg,rgba(38,35,29,.05),#3b372f,rgba(38,35,29,.05))}
.side-marker::before{top:0;height:100%}
.side-marker::after{display:none}
.side-marker .mini{position:absolute;left:0;top:38%;width:16px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 14'%3E%3Cg stroke='%23b59354' stroke-width='1.1'%3E%3Cpath d='M8 0v14'/%3E%3Cpath d='M3 2.5v9'/%3E%3Cpath d='M13 2.5v9'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}

.breakdown{padding:0 0 18px}
.breakdown-header{display:flex;align-items:center;gap:20px;justify-content:center;margin-bottom:30px}
.breakdown-header::before,.breakdown-header::after{content:"";height:1px;background:rgba(181,147,84,.52);flex:1;max-width:220px}
.breakdown-header h2{font-size:clamp(2.2rem,4.2vw,4rem);font-weight:400;margin:0;color:#3a3730}
.character-list{display:grid;gap:26px;max-width:980px;margin:0 auto}
.character-card{display:grid;grid-template-columns:160px 1px 1fr;align-items:center;gap:26px;padding:0 0 16px;position:relative}
.character-card + .character-card{border-top:1px solid rgba(181,147,84,.35);padding-top:26px}
.character-card .portrait-wrap{display:flex;align-items:center;justify-content:center}
.character-card .portrait-ring{
  width:140px;height:140px;border-radius:50%;border:1.4px solid rgba(181,147,84,.54);
  display:grid;place-items:center;position:relative;background:rgba(255,255,255,.12)
}
.character-card .portrait-ring::before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:18px;height:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14'%3E%3Cg stroke='%23b59354' stroke-width='1.1'%3E%3Cpath d='M9 0v14'/%3E%3Cpath d='M4 2v10'/%3E%3Cpath d='M14 2v10'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.character-card img{width:112px;height:112px;object-fit:contain}
.character-card .sep{width:1px;height:150px;background:rgba(181,147,84,.38)}
.character-card .text{font-size:1.2rem;line-height:1.8;color:#3d3933;max-width:640px}
.character-card .text strong{font-weight:400;color:#37342e}

.bottom-skyline{max-width:1250px;margin:34px auto -6px;opacity:.34}

.playwright-page .page-hero{padding-bottom:62px}
.playwright-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(420px,520px);justify-content:center;gap:54px;align-items:start;padding-bottom:40px}
.playwright-photo{border:2px solid rgba(181,147,84,.42);padding:5px;box-shadow:var(--shadow-soft);background:rgba(255,255,255,.24);max-width:340px;justify-self:end;width:100%}
.playwright-photo img{width:100%;height:auto;display:block}
.bio-panel{border:1px solid rgba(38,35,29,.14);padding:52px 34px 44px;min-height:640px;position:relative;background:rgba(255,255,255,.12);width:100%}
.bio-panel::before,.bio-panel::after{content:"";position:absolute;width:18px;height:18px;border-color:rgba(38,35,29,.18)}
.bio-panel::before{left:10px;top:10px;border-left:1px solid;border-top:1px solid}
.bio-panel::after{right:10px;bottom:10px;border-right:1px solid;border-bottom:1px solid}
.bio-name{font-size:clamp(2.35rem,3.9vw,3.45rem);line-height:1.02;margin:54px 0 24px;text-align:center;color:#4c4740;max-width:100%;overflow-wrap:normal}
.bio-divider{margin:0 auto 34px;max-width:210px}
.bio-copy{text-align:center;font-size:1.3rem;line-height:1.8;color:#4a463f}
.bio-copy p{margin:0 0 22px}
.playwright-skyline-wrap{display:flex;justify-content:center;align-items:center;width:100%;overflow:visible}
.playwright-page .bottom-skyline{display:block;width:min(1250px,100%);max-width:none;margin:10px auto -6px;opacity:.42;transform:translate3d(0,var(--parallax-y,0px),0)}

.contact-page .page-hero{padding-bottom:10px}
.contact-form-wrap{max-width:860px;margin:0 auto;text-align:center}
.contact-form{max-width:610px;margin:18px auto 0}
.form-row{display:grid;grid-template-columns:40px 1fr;gap:18px;align-items:center;margin-bottom:18px;text-align:left}
.form-row.icon-top{align-items:start}
.form-icon{width:28px;height:28px;color:var(--gold-deep);display:grid;place-items:center;margin-top:10px}
.form-icon img{width:100%;height:100%}
.form-field label{display:block;font-size:1.1rem;color:#3d3934;margin:0 0 8px}
.form-field input,.form-field textarea{
  width:100%;border:1px solid rgba(38,35,29,.18);background:rgba(255,255,255,.2);color:var(--ink);
  padding:14px 16px;border-radius:2px;outline:none;transition:border-color .25s ease, box-shadow .25s ease
}
.form-field input:focus,.form-field textarea:focus{border-color:rgba(181,147,84,.62);box-shadow:0 0 0 3px rgba(181,147,84,.12)}
.form-field textarea{min-height:148px;resize:vertical}
.contact-actions{margin:30px 0 18px;display:flex;justify-content:center}
.contact-email{display:flex;align-items:center;justify-content:center;gap:14px;font-size:1.15rem;color:#45413a;margin-top:8px}
.contact-email::before,.contact-email::after{content:"";width:64px;height:1px;background:rgba(181,147,84,.5)}
.contact-email .mini-icon{width:18px;height:18px;color:var(--gold-deep)}
.contact-bottom{position:relative;max-width:1180px;margin:18px auto 0;padding-top:12px}
.contact-bottom .skyline-bg{opacity:.44;position:relative;z-index:1}
.contact-bottom .pool-graphic{width:min(720px,82vw);margin:-58px auto 0;filter:drop-shadow(0 12px 22px rgba(0,0,0,.08));position:relative;z-index:2}

.visually-hidden{position:absolute!important;height:1px;width:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

@media (max-width: 1080px){
	.contact-page{
  min-height:auto;
}
  .about-grid{grid-template-columns:1fr;gap:24px}
  .about-visual .skyline-bg{left:0;right:0}
  .about-visual .pool-graphic{
  position:relative;
  margin:0px auto;
	  top:0;
	  bottom:auto;
  width:min(760px,100%);
}
  .side-marker{display:none}
  .playwright-grid{grid-template-columns:1fr;max-width:760px;margin:0 auto;gap:34px}
  .playwright-photo{justify-self:center;max-width:340px}
  .bio-panel{min-height:auto;max-width:620px;justify-self:center}
}

@media (max-width: 820px){
  :root{--header-h:74px}
  .container,.container-tight{width:min(100% - 28px, 1000px)}
  .nav-links{display:none}
  .nav-toggle{display:block}
  .mobile-panel{display:block}
  .brand{font-size:1.9rem}
  .page{padding-top:18px}
  .hero-cover{width:min(92vw,660px)}
  .hero-copy{margin-top:-4px}
  .teaser{font-size:1.18rem;line-height:1.65;padding:0 4px}
  .home-skyline{margin-top:8px;max-width:96vw}
  .cta-btn{min-width:unset;width:min(100%, 360px);padding:18px 24px;font-size:.98rem}
  .footer-inner{flex-direction:column;align-items:flex-start}
  .page-kicker{font-size:.92rem;gap:10px}.page-kicker::before,.page-kicker::after{width:46px}
  .breakdown-header::before,.breakdown-header::after{max-width:72px}
  .character-card{grid-template-columns:1fr;gap:16px;text-align:left}
  .character-card .portrait-wrap{justify-content:flex-start}
  .character-card .sep{display:none}
  .character-card .text{font-size:1.14rem}
  .contact-form{max-width:100%}
  .contact-email{font-size:1rem}
  .contact-bottom .pool-graphic{margin-top:-38px}
}

@media (max-width: 560px){
  .brand{font-size:1.65rem}
  .site-header{border-bottom-color:rgba(38,35,29,.12)}
  .home-page .sunrays{top:-26px;left:-10px;width:125%;height:360px;opacity:.66;transform-origin:10% 0%}
  .hero-cover{width:94vw}
  .teaser{font-size:1.05rem}
  .teaser p{margin:.12em 0}
  .about-copy p,.bio-copy,.character-card .text{font-size:1.05rem;line-height:1.72}
  .about-copy h1{font-size:2.5rem}
  .page-title{font-size:2.7rem}
  .playwright-grid{gap:24px}
  .bio-name{font-size:2.4rem;margin-top:24px}
  .bio-panel{padding:28px 22px 30px}
  .form-row{grid-template-columns:30px 1fr;gap:12px}
  .form-icon{width:22px;height:22px;margin-top:12px}
  .footer{border-top-width:1px}
  .footer-copy,.social-link{font-size:.92rem}
}

@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .parallax-skyline{transform:none!important}
  .hero-cover-wrap{opacity:1!important;filter:none!important;transform:none!important}
  .hero-cover{opacity:1!important;animation:none!important}
  .hero-cover-blur{display:none!important}
}


.scratch-divider{
  width:min(190px,18vw);
  margin:18px auto 8px;
  position:relative;
  z-index:2;
  pointer-events:none;
}
.scratch-divider img{
  width:100%;
  height:auto;
  display:block;
  opacity:.94;
  mix-blend-mode:multiply;
}

.form-service-placeholder{
  width:min(610px,100%);
  min-height:430px;
  margin:18px auto 0;
}

@media (max-width:820px){
  .scratch-divider{width:min(150px,30vw);margin-top:16px}
  .form-service-placeholder{min-height:380px}
}
@media (max-width:560px){
  .scratch-divider{width:min(128px,34vw);margin-top:14px}
  .form-service-placeholder{min-height:330px}
}
.audition-booking {
  width: 100%;
  overflow: hidden;
}

.audition-booking iframe {
  display: block;
  width: 100%;
  height: 950px;
  border: 0;
}

@media (max-width: 768px) {
  .audition-booking iframe {
    height: 1100px;
  }
}

@media (max-width: 480px) {
  .audition-booking iframe {
    height: 1200px;
  }
}
p a.colorlink {
  color: #76571f;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s ease;
}

p a.colorlink:hover,
p a.colorlink:focus {
  color: #3e3425;
}

p a.colorlink:visited {
  color: #6d5333;
}
.etchings-alert {
  box-sizing: border-box;
  width: 100%;
  padding: 14px 22px;
  margin: 20px 0;

  background-color: #d8c49a;
  border: 1px solid #a98c55;
  border-left: 5px solid #80642f;
  border-radius: 3px;

  color: #292722;

  font-size: 16px;
  line-height: 1.5;
}

.etchings-alert strong {
  font-weight: 700;
  margin-right: 6px;
}

.etchings-alert a {
  color: #594419;
  font-weight: 700;
  text-decoration: none;
  margin-left: 5px;
}

.etchings-alert a:hover {
  color: #292722;
}

.seating-chart {
  display: block;
  width: 100%;
  max-width: 900px;
  height: auto;
  margin: 20px auto 8px;
  cursor: zoom-in;
}

.seating-chart-note {
  text-align: center;
  font-size: 0.9rem;
  opacity: 0.75;
}


/* FULL SCREEN OVERLAY */

.seating-dialog {
  width: 100vw;
  height: 100vh;
  max-width: none;
  max-height: none;
  margin: 0;
  padding: 40px;
  border: none;
  background: rgba(0, 0, 0, 0.94);
  box-sizing: border-box;
}


/* Dark background behind dialog */

.seating-dialog::backdrop {
  background: rgba(0, 0, 0, 0.94);
}


/* Enlarged image */

.seating-dialog img {
  display: block;
  width: auto;
  height: auto;
  max-width: 95vw;
  max-height: 90vh;
  margin: auto;
  object-fit: contain;
}


/* X button */

.seating-close {
  position: fixed;
  top: 12px;
  right: 25px;
  z-index: 10001;

  border: none;
  background: none;
  color: #fff;

  font-size: 52px;
  font-weight: 300;
  line-height: 1;

  cursor: pointer;
}

.seating-close:hover {
  opacity: 0.7;
}
.seating-chart-note {
  text-align: center;
  font-size: 0.9rem;
  opacity: 0.75;
}
.kickstarter-wrap {
  width: 90%;
  max-width: 1000px;
  margin: 30px auto;
  text-align: center;
}

.kickstarter-wrap iframe {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  height: auto;
  border: 0;
}

.kickstarter-button {
  display: inline-block;
  margin-top: 18px;
  padding: 12px 26px;

  background: #yourcolor;
  color: #fff;

  text-decoration: none;
  font-weight: 700;
  letter-spacing: 0.04em;
}
.support-etchings {
  width: 90%;
  max-width: 1100px;
  margin: 50px auto;
  text-align: center;
}

.support-etchings h2 {
  margin-bottom: 10px;
}

.support-intro {
  max-width: 700px;
  margin: 0 auto 35px;
  font-size: 1.05rem;
  line-height: 1.6;
}

.reward-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  align-items: stretch;
}

.reward-card {
  padding: 28px 22px;
  border: 1px solid rgba(255,255,255,.25);
  background: rgba(255,255,255,.06);
  text-align: left;
}

.reward-card.featured {
  transform: scale(1.03);
}

.reward-amount {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 5px;
}

.reward-card h3 {
  margin: 0 0 15px;
  font-size: 1.25rem;
}

.reward-card p {
  margin: 0;
  line-height: 1.55;
}

.kickstarter-cta {
  margin-top: 40px;
}

.support-etchings {
  width: 100%;
  margin: 0 auto;
}

.support-etchings h2 {
  margin-bottom: 10px;
}

.support-intro {
  margin: 0 0 25px;
  line-height: 1.6;
}

.reward-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.reward-card {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 18px;
  align-items: start;

  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.05);
}

.reward-card.featured {
  border-width: 2px;
}

.reward-amount {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
}

.reward-text h3 {
  margin: 0 0 6px;
  font-size: 1.08rem;
}

.reward-text p {
  margin: 0;
  line-height: 1.45;
  font-size: .95rem;
}

.kickstarter-cta {
  margin-top: 28px;
  text-align: center;
}

.back-etchings-button {
  display: inline-block;
  padding: 14px 30px;

  background: #2bde73;
  color: #111;

  text-decoration: none;
  font-weight: 700;
  letter-spacing: .05em;

  transition: transform .2s ease, opacity .2s ease;
}

.back-etchings-button:hover {
  transform: translateY(-2px);
  opacity: .9;
}

.kickstarter-note {
  margin-top: 10px;
  font-size: .82rem;
  opacity: .7;
}


/* MOBILE */

@media (max-width: 600px) {

  .reward-card {
    grid-template-columns: 1fr;
    gap: 6px;
  }

  .reward-amount {
    font-size: 1.45rem;
  }

  .back-etchings-button {
    width: 100%;
    box-sizing: border-box;
  }

}
.bio2-panel{border:1px solid rgba(38,35,29,.14);padding:15px 34px 4px;min-height:340px;position:relative;background:rgba(255,255,255,.12);width:100%}
.bio2-panel::before,.bio-panel::after{content:"";position:absolute;width:18px;height:18px;border-color:rgba(38,35,29,.18)}
.bio2-panel::before{left:10px;top:10px;border-left:1px solid;border-top:1px solid}
.bio2-panel::after{right:10px;bottom:10px;border-right:1px solid;border-bottom:1px solid}
.bio2-name{font-size:clamp(1.16rem,2.0vw,1.75rem);line-height:1.02;margin:5px 0 5px;text-align:center;color:#4c4740;max-width:100%;overflow-wrap:normal}
.bio2-divider{margin:0 auto 34px;max-width:210px}
.bio2-copy{text-align:center;font-size:1.0rem;line-height:1.8;color:#4a463f}
.bio2-copy p{margin:0 0 15px}