@font-face{font-family:Parisienne;src:url('assets/Parisienne.ttf')}@font-face{font-family:Cormorant;src:url('assets/cormorantgaramond.ttf')}@font-face{font-family:Cinzel;src:url('assets/cinzel.ttf')}@font-face{font-family:GreatVibes;src:url('assets/greatvibes.ttf')}@font-face{font-family:Lobster;src:url('assets/lobster.ttf')}@font-face{font-family:Fraktur;src:url('assets/unifraktur.ttf')}
:root{--paper:#faf6ef;--ink:#24211d;--gold:#a17d3b;--line:#d6cdc0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,serif}button,input{font:inherit;color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}header{height:66px;display:flex;align-items:center;gap:35px;padding:0 4%;border-bottom:1px solid var(--line);font:11px Arial,sans-serif;letter-spacing:1.8px}.wordmark{margin-right:auto}.bag{border:0;background:none;font:inherit;letter-spacing:inherit}#count{display:inline-grid;place-items:center;border:1px solid var(--line);border-radius:50%;width:24px;height:24px;margin-left:8px}.creator{display:grid;grid-template-columns:1fr 1fr;max-width:1680px;margin:auto}.photo{position:relative;aspect-ratio:4/5;align-self:stretch;overflow:hidden;background:#b78968}.photo>img,.photo>svg{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.photo>img{object-position:center}.live{position:absolute;left:26px;top:25px;font:9px Arial;letter-spacing:2px;background:#faf6efdb;padding:11px 13px;border-radius:2px}.live i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#8e783f;margin-right:7px}.photo-note{position:absolute;bottom:23px;left:28px;color:#fff6e6;font-size:19px;font-style:italic;text-shadow:0 1px 4px #4333}.controls{padding:32px 6% 18px}.eyebrow{font:9px Arial;letter-spacing:2.4px;margin:0 0 14px;color:#806a46}h1,h2{font-family:Cormorant,Georgia,serif;font-weight:500;letter-spacing:-1.8px}h1{font-size:clamp(35px,3.7vw,65px);line-height:1.05;margin:0 0 24px;white-space:nowrap}.name-row{display:flex;gap:20px;align-items:center}.name-row label{font-size:18px;white-space:nowrap}input{min-width:0;width:100%;height:42px;padding:7px 14px;background:transparent;border:1px solid var(--line);border-radius:5px;font-size:22px}input:focus{outline:2px solid #a17d3b77;outline-offset:2px}.hint{font:10px Arial;color:#8b8072;margin:7px 0 13px}.name-row+.hint{padding-left:104px}fieldset{border:0;padding:0;margin:0 0 14px;min-width:0}legend{font-size:18px;margin-bottom:7px;width:100%}.choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choices button,.fonts button{background:transparent;border:1px solid var(--line);border-radius:5px;min-height:41px;position:relative}.choices button{font-size:16px}.choices small{font-size:14px;margin-left:6px}.choices button[aria-pressed=true],.fonts button[aria-pressed=true]{border-color:var(--gold);background:#eee2c955}.choices button[aria-pressed=true]:after,.fonts button[aria-pressed=true]:after{content:'✓';position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--gold);font:18px Arial}.choices button:hover,.fonts button:hover{border-color:var(--gold)}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.swatch{display:inline-block;width:13px;height:13px;border-radius:50%;vertical-align:-1px;margin-right:8px;border:1px solid #8e806b}.gold{background:linear-gradient(135deg,#b98028,#ffedab,#a77229)}.silver{background:linear-gradient(135deg,#838587,#fff,#a0a2a2)}.legend-note{float:right;font:9px Arial;color:#8b8072;letter-spacing:.2px;margin-top:7px}.fonts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.fonts button{font-size:28px;height:47px;overflow:hidden;padding:0 25px 0 8px}.detail-preview{height:104px;display:grid;place-items:center;margin:-5px 0 5px}.detail-preview svg{width:90%;height:100%}.centered{text-align:center;margin-bottom:0;font-style:italic}.total{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:12px}.total span{font-size:29px}.total p{font-size:14px;font-style:italic;margin:4px 0}.total strong{font-size:48px;font-weight:400;line-height:1}.shipping{display:flex;justify-content:space-between;gap:12px;font-size:12px;margin:13px 0}.add{width:100%;border:0;border-radius:4px;background:var(--gold);color:#fffaf0;padding:12px 20px;font-size:22px}.add span{float:right}.add:hover{background:#8f6c2f}.demo-note{font:9px/1.6 Arial;color:#938778;text-align:center;margin:9px 0 0}.craft{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;max-width:1680px;margin:auto}.craft>div:first-child{padding:65px 8%}.craft h2{font-size:clamp(44px,4.6vw,78px);line-height:.98;margin:22px 0}.craft p:not(.eyebrow){font-size:18px;line-height:1.55;max-width:480px}.warranty{display:flex;gap:16px;border-top:1px solid var(--gold);padding-top:20px;font-size:25px}.warranty small{display:block;font:11px/1.5 Arial;color:#817563;margin-top:7px}.craft-points{display:flex;justify-content:space-between;font:11px/1.6 Arial;margin:28px 0}.outline{display:inline-block;border:1px solid var(--gold);padding:13px 25px;border-radius:4px}.editorial{display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse at 30% 25%,#e7d3af,#b49870);overflow:hidden;text-align:center}.editorial p{font:italic 60px/1 Cormorant!important;color:#fff8e9}.editorial svg{width:85%;height:170px}.editorial>span{font:9px Arial;letter-spacing:3px;color:#fff8e9;margin:24px}.delivery{text-align:center;padding:55px 3% 35px;border-top:1px solid var(--line)}.pill{font:11px Arial;letter-spacing:2px;border:1px solid var(--gold);border-radius:40px;padding:11px 23px;color:#8d6c32;display:inline-block}.delivery h2{font-size:clamp(38px,5vw,76px);margin:24px 0 12px;line-height:1}.delivery p{font-size:16px;line-height:1.5}.benefits{display:flex;justify-content:center;gap:0;margin:32px 0;font:11px Arial}.benefits span{padding:0 28px;border-right:1px solid var(--gold)}.benefits span:last-child{border:0}.collection{width:100%;aspect-ratio:3.24;background:url('assets/collection.png') center 81.6%/100% auto no-repeat}.captions{display:grid;grid-template-columns:repeat(3,1fr);font-style:italic;font-size:20px;padding-top:15px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:25px 4%;font:10px Arial;color:#827463}dialog{border:1px solid var(--line);border-radius:7px;background:var(--paper);width:min(90vw,510px);padding:35px}dialog::backdrop{background:#211b1666}dialog h2{font-size:39px}#close{float:right;font-size:24px;background:none;border:0}.cart-item{padding:14px 0;border-top:1px solid var(--line);font-size:17px}.cart-item small{display:block;font:11px Arial;margin-top:8px;color:#83735c}.cart-item button{float:right;border:0;background:none;font:10px Arial;text-decoration:underline}#continue{font-size:17px;margin-top:20px}
@media(min-width:1350px){.controls{padding-top:45px}.controls fieldset{margin-bottom:19px}.detail-preview{height:135px}.choices button{min-height:47px}.fonts button{height:58px}.photo{aspect-ratio:auto;min-height:850px}}
@media(max-width:850px){header{height:55px}.creator{grid-template-columns:1fr 1fr}.controls{padding:22px 5% 15px}h1{font-size:36px;white-space:normal;margin-bottom:18px}.eyebrow{font-size:8px;line-height:1.5}.choices button{font-size:13px;padding:8px 22px 8px 8px}.choices small{display:block;font-size:11px}.fonts button{font-size:24px}.name-row{gap:10px}.name-row label{font-size:16px}.legend-note{display:none}.photo{aspect-ratio:auto}.photo>img{object-fit:cover}.shipping{font-size:10px}.craft>div:first-child{padding:40px 8%}.craft-points{gap:14px}.editorial p{font-size:44px!important}.benefits span{padding:0 14px}}
@media(max-width:620px){header{padding:0 20px;gap:15px;font-size:9px;letter-spacing:1px}.creator{display:block}.photo{aspect-ratio:4/4.3}.photo>img{height:auto;width:100%;top:-10%;object-fit:contain}.photo>svg{height:auto;width:100%;top:-10%;aspect-ratio:4/5}.photo-note{font-size:17px}.controls{padding:30px 23px 20px}h1{font-size:46px;white-space:nowrap;letter-spacing:-2px}.name-row label{font-size:18px}.choices button{font-size:16px;min-height:45px}.choices small{display:inline;font-size:12px}.fonts button{height:52px;font-size:30px}.detail-preview{height:115px}.shipping{font-size:11px}.craft{display:block}.craft>div:first-child{padding:44px 25px}.craft h2{font-size:52px}.craft p:not(.eyebrow){font-size:17px}.editorial{min-height:330px}.editorial p{margin:30px 0 0}.editorial svg{height:125px}.delivery{padding:40px 14px 30px}.delivery h2{font-size:44px;line-height:1.04}.delivery p{font-size:14px}.pill{font-size:9px;letter-spacing:1.3px}.benefits{display:grid;grid-template-columns:1fr 1fr;gap:18px}.benefits span{border:0}.collection{aspect-ratio:3.24}.captions{font-size:13px}footer{display:block;text-align:center;line-height:2}footer span{display:block}}
/* Keep grid tracks within their assigned columns at browser zoom levels. */
@font-face{font-family:Allura;src:url('assets/allura.ttf')}
.creator{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);align-items:start}
.creator>*{min-width:0;max-width:100%}
.controls{position:relative;isolation:isolate;background:var(--paper);overflow-wrap:anywhere}
.controls fieldset{display:block;min-inline-size:0;max-inline-size:100%;margin-inline:0}
.controls legend{float:none;width:auto;max-width:100%}
.controls .choices,.controls .fonts{width:100%;min-width:0;grid-template-columns:repeat(2,minmax(0,1fr))}
.controls .fonts{grid-template-columns:repeat(3,minmax(0,1fr))}
.choices button,.fonts button{min-width:0;max-width:100%;overflow-wrap:anywhere}
.choices button{padding:10px 25px 10px 8px}
.controls h1{white-space:normal;font-size:clamp(34px,3.7vw,65px)}
.photo{align-self:start;aspect-ratio:4/5;min-height:0}
.photo>img{object-fit:fill;inset:0;width:100%;height:100%}
.photo>svg{inset:0;width:100%;height:100%;aspect-ratio:auto}
.shipping{flex-wrap:wrap}
@media(max-width:1000px){
 .creator{display:flex;flex-direction:column}
 .photo{width:100%;aspect-ratio:4/4.3;max-height:none}
 .photo>img,.photo>svg{width:100%;height:auto;top:-10%;aspect-ratio:4/5}
 .controls{width:100%;padding:30px clamp(18px,5vw,65px) 24px}
 .controls h1{font-size:clamp(34px,6.5vw,60px)}
 .choices button{font-size:16px;min-height:46px}
 .choices small{display:inline;font-size:13px}
 .fonts button{height:54px;font-size:30px}
 .detail-preview{height:125px}
}
@media(max-width:380px){
 header{gap:8px;padding:0 12px;letter-spacing:.6px}
 .controls{padding-inline:16px}
 .controls h1{font-size:36px}
 .name-row{gap:12px}
 .choices button{font-size:14px}
 .choices small{display:block;margin:3px 0 0}
 .fonts button{font-size:25px}
 .legend-note{display:none}
}

.controls .fonts{grid-template-columns:repeat(2,minmax(0,1fr))}.legend-note{float:none;display:inline-block;margin-left:12px;vertical-align:middle}

/* Use the device's installed reference-style faces without redistributing fonts. */
@font-face{font-family:BrushReference;src:local('Brush Script MT'),local('Brush Script MT Italic')}
@font-face{font-family:FormalReference;src:local('Script MT Bold')}
@font-face{font-family:HandReference;src:local('Segoe Script Bold'),local('Segoe Script')}

@font-face{font-family:BellaReference;src:local('Script MT Bold'),local('French Script MT')}
