@font-face{font-family:"URW Gothic";src:url("assets/gothic-demi.otf") format("opentype");font-weight:700;font-display:swap}
:root{
  --pink:#FF63C3;--cream:#F0F0D2;--sage:#75A688;--teal:#2D9495;--mint:#A9CCB8;
  --ink:#202f2a;--muted:#42554c;--pink-ink:#a91e70;--paper:#faf9e9;--line:#abbba8;
  --stripe:repeating-linear-gradient(90deg,var(--sage) 0 9px,var(--mint) 9px 18px,var(--cream) 18px 25px)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 system-ui,sans-serif}
a{color:inherit;text-underline-offset:.2em}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid #1b6769;outline-offset:4px}
img{max-width:100%}
h1,h2,h3,.wordmark,legend,.number{font-family:"URW Gothic",system-ui,sans-serif;font-weight:700;line-height:1.05;letter-spacing:-.045em}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(4rem,8vw,8.4rem);margin-bottom:.14em;color:var(--pink);text-shadow:1px 1px 0 var(--pink-ink),-1px 0 0 var(--pink-ink),0 -1px 0 var(--pink-ink)}
h2{font-size:clamp(2.3rem,5vw,4.35rem);color:var(--pink-ink);margin-bottom:.35em}
h3{font-size:clamp(1.36rem,2.2vw,1.8rem);margin-bottom:.5em}
p{max-width:65ch}
.banner{background:var(--stripe);height:15px}
header,footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:20px max(5%,calc((100% - 1280px)/2))}
header{background:var(--cream);border-bottom:1px solid var(--line)}
.wordmark{display:inline-block;color:var(--pink-ink);font-size:1.9rem;white-space:nowrap;text-decoration:none}
nav{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;font-size:.87rem;font-weight:650}
nav a{text-decoration:none}
nav a[href="#order"]{padding:8px 15px;background:var(--pink);border-radius:999px}
main{max-width:1440px;margin:auto}
section{padding:clamp(42px,6vw,94px) clamp(18px,5vw,76px);scroll-margin-top:18px}
.hero{padding:clamp(12px,2vw,25px);background:var(--stripe)}
.hero-inner{position:relative;isolation:isolate;display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(24px,5vw,72px);align-items:center;padding:clamp(32px,6vw,88px);background:var(--cream);border-radius:34px}
.hero-wave{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}
.hero-tagline{font-size:clamp(1.5rem,3vw,2.7rem);font-weight:750;line-height:1.12;margin:.25em 0 .55em;letter-spacing:-.045em}
.hero-note,.small{font-size:.87rem}
.hero-note{margin:18px 0 0}
.eyebrow{display:block;margin-bottom:10px;font-size:.73rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase;color:#285c54}
.featured-photo{margin:0;min-width:0}
.featured-photo a{display:block;border-radius:48% 48% 16px 16px / 34% 34% 16px 16px;overflow:hidden;outline:4px solid var(--pink);outline-offset:4px}
.featured-photo img{display:block;width:100%;height:clamp(340px,43vw,550px);object-fit:cover;object-position:50% 54%}
.featured-photo figcaption{font-size:.79rem;margin-top:16px}
.featured-photo figcaption span{display:block;font-size:.72rem}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.button,button{display:inline-block;padding:10px 17px;min-height:44px;border:1px solid var(--ink);border-radius:999px;background:var(--pink);color:var(--ink);font:700 .87rem/1.5 system-ui,sans-serif;text-decoration:none;cursor:pointer}
.button:hover,button:hover{background:var(--mint)}
.secondary{background:var(--paper)}
.muted{color:var(--muted)}
#about,#gallery,#sizing,#order{background:var(--paper)}
.artist-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,270px);align-items:center;gap:clamp(24px,6vw,82px);max-width:940px;margin:auto}
.artist-portrait{display:block;width:100%;height:auto;border-radius:25% 25% 16px 16px;box-shadow:8px 8px 0 var(--mint)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}
.section-head p{max-width:40ch}
.cards,.style-guide,.steps,.split,.grid2,.formwrap{display:grid;gap:20px}
.cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.card,.panel,#request,#review{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:clamp(14px,2vw,26px)}
.cards .card{display:flex;flex-direction:column;align-items:start}
.cards .card h3{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 14px;width:100%}
.cards .card .choose{margin-top:auto}
.product-photo{display:block;width:100%;margin-bottom:22px;overflow:hidden;border-radius:11px;background:var(--mint)}
.product-photo img{display:block;width:100%;aspect-ratio:1/1.04;object-fit:cover;object-position:50% 42%}
.holo-card .product-photo img{object-position:50% 46%}
.velvet-photo img{object-position:50% 40%}
.blush-photo img{object-position:50% 45%}
.detail-link{display:flex;align-items:center;gap:10px;font-size:.8rem;margin:0 0 18px}
.detail-link img{width:50px;height:56px;object-fit:cover;border-radius:7px}
.price{margin-left:auto;white-space:nowrap;font:750 1rem system-ui,sans-serif}
.holiday-price{font-weight:700;color:#285c54}
#styles{border-top:12px solid var(--sage)}
.style-guide{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}
.style-example{text-align:center}
.style-example h3{margin:12px 0 7px;font-size:1.2rem}
.style-example p{margin:0;font-size:.85rem}
.style-photo{display:flex;height:120px;align-items:center;justify-content:center;background:#202020;border-radius:8px;overflow:hidden}
.style-photo img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-feature{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(24px,5vw,72px)}
.gallery-feature+.gallery-feature{margin-top:35px;padding-top:35px;border-top:1px solid var(--line)}
.gallery-feature>a{display:block;overflow:hidden;border-radius:16px;background:var(--mint)}
.gallery-feature img{display:block;width:100%;height:clamp(330px,44vw,540px);object-fit:cover}
.color-play img{object-position:50% 48%}
.beetlejuice img{object-position:50% 43%}
.gallery-feature .pill{margin-bottom:16px}
#how{background:var(--mint)}
.steps{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}
.steps>div{padding:18px;border-top:4px solid var(--teal);background:var(--paper);border-radius:0 0 12px 12px}
.number{font-size:2rem;color:var(--pink-ink);display:block;margin-bottom:12px}
.steps p{font-size:.9rem;margin-bottom:0}
.split,.grid2{grid-template-columns:repeat(2,minmax(0,1fr))}
.panel{background:var(--cream);border-top:4px solid var(--teal)}
.pill{display:inline-block;border-radius:999px;padding:6px 11px;font-size:.75rem;background:var(--mint)}
.panel h3{margin-top:14px}
li{margin-bottom:.5em}
details{border-bottom:1px solid var(--line);padding:13px 0}
summary{cursor:pointer;font-weight:700}
.formwrap{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(24px,5vw,65px);align-items:start}
#request,#review{background:var(--cream)}
fieldset{border:0;padding:0;margin:0 0 24px;min-width:0}
legend{font-size:1.4rem;margin-bottom:8px}
label{display:block;margin:12px 0 5px;font-size:.87rem;font-weight:650}
input,select,textarea{width:100%;min-width:0;padding:10px;border:1px solid #758679;border-radius:7px;background:var(--paper);color:var(--ink);font:inherit}
.fingerrow{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.fingerrow input{padding:7px 3px}
.fingerrow label{font-size:.72rem}
.check{display:flex;align-items:start;gap:8px}
.check input{width:auto;margin-top:.45em;accent-color:#285c54}
.notice{padding:17px;background:var(--mint);border-left:4px solid var(--teal);border-radius:0 8px 8px 0}
.result{white-space:pre-wrap;overflow-wrap:anywhere;padding:14px;background:var(--paper);border:1px solid var(--line)}
[hidden]{display:none!important}
footer{position:relative;border-top:16px solid transparent;border-image:var(--stripe) 16;background:var(--mint);font-size:.9rem}
.printhead{display:none}
@media(max-width:950px){
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .style-guide,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}
  header{flex-wrap:wrap}
}
@media(max-width:700px){
  header,footer{flex-direction:column;align-items:start;gap:12px}
  nav{gap:8px 13px}
  .hero-inner,.gallery-feature,.split,.formwrap{grid-template-columns:1fr}
  .hero-inner{padding:50px 25px 40px}
  h1{font-size:clamp(2.8rem,12.8vw,5.4rem)}
  .featured-photo img{height:clamp(270px,78vw,420px)}
  .section-head{display:block}
  .gallery-feature img{height:auto;max-height:540px;object-fit:contain}
}
@media(max-width:520px){
  .cards,.artist-intro,.grid2,.steps{grid-template-columns:1fr}
  .artist-portrait{width:min(100%,230px)}
  .style-guide{gap:10px}
  .style-example{padding:9px}
  .style-photo{height:90px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{
  body{background:white;font-size:12px}
  header,.banner,main>section:not(#sizing),footer,.noprint{display:none!important}
  #sizing{padding:0;background:white}
  .split{display:block}
  .panel{border:0;padding:12px;background:white}
  .printhead{display:block}
  h2{font-size:25px}
}
