
:root{--ink:#382d2a;--brown:#6f5148;--rose:#c98f86;--blush:#efd8d1;--cream:#f8f2e9;--paper:#fffaf4;--sage:#a9ad91;--line:rgba(56,45,42,.17);--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65}a{color:inherit}img{max-width:100%}.skip-link{position:fixed;top:0;left:1rem;z-index:20;padding:.7rem 1rem;background:var(--ink);color:#fff;transform:translateY(-120%)}.skip-link:focus{transform:none}.site-header{height:96px;padding:0 clamp(1.25rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(255,250,244,.94);position:sticky;top:0;z-index:10;backdrop-filter:blur(10px)}.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;line-height:1}.brand-mark{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--brown);border-radius:50%;font-family:var(--serif);font-size:1rem}.brand strong,.brand em{display:block}.brand strong{font-family:var(--serif);font-size:1.16rem}.brand em{text-transform:uppercase;letter-spacing:.28em;font-style:normal;font-size:.62rem;margin-top:.35rem}.site-header nav{display:flex;gap:clamp(1rem,2.7vw,2.4rem)}.site-header nav a{text-decoration:none;font-size:.85rem;font-weight:600}.site-header nav a:hover,.site-header nav a:focus{text-decoration:underline;text-underline-offset:5px}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:100px;font-weight:600;transition:.2s}.header-cta{background:var(--brown);color:#fff;padding:.7rem 1.15rem;font-size:.8rem}.header-cta:hover,.button.primary:hover{background:var(--ink);transform:translateY(-2px)}.section-pad{padding:clamp(5rem,10vw,9rem) clamp(1.25rem,7vw,7rem)}.hero{min-height:calc(100vh - 96px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6vw;overflow:hidden;background:radial-gradient(circle at 90% 10%,#f3dfd8 0,transparent 30%),var(--paper)}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.2em;font-size:.72rem;font-weight:600;color:var(--brown)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:600;line-height:1.02}h1{font-size:clamp(3.7rem,7.7vw,7.5rem);letter-spacing:-.045em;margin:.6rem 0 1.5rem}h1 em{color:var(--rose);font-weight:500}.lead{max-width:620px;font-size:clamp(1.05rem,1.4vw,1.25rem)}.actions{display:flex;gap:.8rem;margin:2rem 0}.button{padding:.9rem 1.4rem;border:1px solid var(--brown)}.button.primary{background:var(--brown);color:#fff}.button.secondary:hover{background:var(--blush)}.preview-note{font-size:.76rem;max-width:520px;color:#74635d}.preview-note span{color:var(--rose);margin-right:.4rem}.hero-art{position:relative;min-height:600px}.arch-card{position:absolute;inset:4% 9% 3%;border-radius:240px 240px 25px 25px;background:var(--blush);display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:22px 28px 0 #e4c5bb}.photo-frame{width:59%;aspect-ratio:4/5;background:linear-gradient(145deg,#b9b69c,#7e846c);border:12px solid var(--paper);box-shadow:0 15px 35px rgba(75,48,39,.15);transform:rotate(-3deg);display:grid;place-items:center;text-align:center;color:#fff;font-family:var(--serif);font-style:italic;font-size:1.2rem}.arch-card p{margin:2.8rem 0 0;font-family:var(--serif);font-style:italic}.sparkle{position:absolute;color:var(--paper);font-size:2rem}.sparkle.one{top:18%;left:13%}.sparkle.two{right:13%;bottom:21%;font-size:1.3rem}.round-piece{position:absolute;right:0;top:6%;width:106px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:var(--brown);color:#fff;font-family:var(--serif);border:8px solid var(--paper);box-shadow:0 10px 25px #9e7c7355}.keychain-piece{position:absolute;left:1%;bottom:7%;width:84px;height:114px;border-radius:42px;background:var(--rose);border:7px solid var(--paper);display:grid;place-items:center;color:#fff;font-size:1.8rem;transform:rotate(10deg)}.keychain-piece:before{content:"";position:absolute;width:30px;height:30px;border:5px solid var(--brown);border-radius:50%;top:-27px}.marquee{padding:1rem 5vw;background:var(--brown);color:#fff;display:flex;justify-content:space-around;align-items:center;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem}.marquee b{color:var(--rose)}.about{display:grid;grid-template-columns:.45fr 1.35fr .8fr;gap:6vw;align-items:start}.about h2,.section-heading h2,.contact h2{font-size:clamp(2.7rem,5vw,5rem);letter-spacing:-.035em}.about-copy>p{font-size:1.05rem;max-width:690px}.owner-needed{border-left:3px solid var(--rose);padding:.65rem 1rem;margin-top:2rem;display:flex;flex-direction:column;font-size:.84rem}.owner-needed span{color:#75665f}.about blockquote{margin:3rem 0 0;padding:2rem 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.5rem;font-style:italic}.about cite{display:block;font-family:var(--sans);font-size:.67rem;font-style:normal;margin-top:1.2rem;line-height:1.5;color:#75665f}.services{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:4rem}.section-heading h2{margin:.4rem 0 0}.section-heading>p{max-width:480px;margin-bottom:.5rem}.service-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:1.2rem}.service-card{min-height:420px;background:var(--paper);padding:2rem;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:160px 160px 8px 8px;text-align:center;align-items:center}.service-card.feature{background:var(--blush)}.card-number{align-self:flex-end;font-size:.7rem}.service-icon{margin:auto auto 2rem;width:110px;height:110px;border-radius:50%;background:var(--rose);display:grid;place-items:center;color:#fff;font-size:2.2rem;box-shadow:0 0 0 12px #ffffff77}.camera{border-radius:20px;position:relative}.camera:before{content:"";width:47px;height:47px;border:5px solid white;border-radius:50%}.camera i{position:absolute;width:28px;height:10px;border-radius:4px 4px 0 0;background:#fff;top:-9px}.magnet{background:var(--sage)}.key{background:var(--brown)}.service-card h3{font-family:var(--serif);font-size:1.65rem;margin-bottom:.5rem}.service-card p{font-size:.9rem}.detail-needed{margin-top:auto;padding-top:1rem;border-top:1px solid var(--line);width:100%;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.gallery{background:var(--paper)}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;grid-template-rows:250px 290px;gap:1rem}.gallery-placeholder{margin:0;position:relative;overflow:hidden;min-height:220px}.gallery-placeholder:before,.gallery-placeholder:after{content:"";position:absolute;border:1px solid #ffffff75;border-radius:50%}.gallery-placeholder:before{width:190px;height:190px;top:-40px;right:-35px}.gallery-placeholder:after{width:80px;height:80px;left:12%;bottom:17%}.gallery-placeholder div{position:absolute;inset:auto 1.3rem 1.3rem;color:#fff;z-index:1;display:grid}.gallery-placeholder span{font-size:.7rem}.gallery-placeholder b{font-family:var(--serif);font-size:1.3rem}.gallery-placeholder small{text-transform:uppercase;letter-spacing:.12em;font-size:.56rem;margin-top:.35rem}.gallery-placeholder.tall{grid-row:span 2}.gallery-placeholder.wide{grid-column:span 2}.rose{background:linear-gradient(145deg,#d6aaa2,#ad7168)}.clay{background:linear-gradient(145deg,#b58e80,#846158)}.cream{background:linear-gradient(145deg,#d8c6aa,#aa9476)}.sage{background:linear-gradient(145deg,#b9bba4,#80866b)}.brown{background:linear-gradient(145deg,#7f6057,#4b3833)}.contact{background:var(--blush);display:grid;grid-template-columns:1fr .8fr;gap:8vw;align-items:center}.contact-copy>p:not(.section-label):not(.eyebrow){max-width:650px}.contact-card{background:var(--paper);padding:clamp(2rem,5vw,4rem);box-shadow:18px 18px 0 #d8b8ae}.contact-card h3{font-family:var(--serif);font-size:1.7rem}.contact-card ul{padding:0;list-style:none;margin:2rem 0}.contact-card li{padding:.8rem 0;border-bottom:1px solid var(--line);font-size:.86rem;display:flex;gap:1rem}.contact-card li span{color:var(--rose);font-weight:600}.status-pill{margin:2rem 0 0;padding:.8rem;border:1px dashed var(--rose);text-align:center;text-transform:uppercase;letter-spacing:.1em;font-size:.62rem}footer{background:var(--ink);color:#fff;padding:4rem clamp(1.25rem,7vw,7rem);display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:1rem}footer p{margin:0;text-align:right;font-size:.8rem}.footer-brand{width:max-content}.fine-print{grid-column:1/-1;padding-top:2rem;border-top:1px solid #ffffff30;color:#cdbeb8}
@media(max-width:980px){.site-header nav{display:none}.hero{grid-template-columns:1fr}.hero-art{min-height:520px;max-width:580px;width:100%;margin:auto}.about{grid-template-columns:1fr 2fr}.about blockquote{grid-column:2}.service-grid{grid-template-columns:1fr 1fr}.service-card.feature{grid-column:1/-1}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-placeholder.wide{grid-column:auto}.contact{grid-template-columns:1fr}}
@media(max-width:640px){.site-header{height:78px}.header-cta{display:none}.brand-mark{width:40px;height:40px}.hero{min-height:auto;padding-top:4rem}.hero-art{min-height:400px}.round-piece{width:80px}.keychain-piece{width:65px;height:90px}.marquee span:nth-of-type(even),.marquee b:nth-of-type(even){display:none}.about{grid-template-columns:1fr}.about blockquote{grid-column:auto}.section-heading{display:block}.service-grid{grid-template-columns:1fr}.service-card.feature{grid-column:auto}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto}.gallery-placeholder,.gallery-placeholder.tall,.gallery-placeholder.wide{grid-column:auto;grid-row:auto;min-height:270px}.actions{flex-direction:column;align-items:stretch}.contact-card{box-shadow:10px 10px 0 #d8b8ae}footer{grid-template-columns:1fr}footer p{text-align:left}.fine-print{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.header-cta{transition:none}}

/* Owner-supplied visual refresh */
:root{--ink:#211c19;--brown:#654b40;--gold:#d3ae31;--rose:#a96f66;--blush:#ead5d0;--cream:#f4ecdf;--paper:#fbf7f1;--white:#fffdf9;--sage:#8d927a;--line:rgba(33,28,25,.16);--serif:Georgia,"Times New Roman",serif;--sans:"Helvetica Neue",Helvetica,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.65;overflow-x:hidden}a{color:inherit}img{display:block;max-width:100%}.skip-link{z-index:50}.site-header{height:84px;padding:0 clamp(1rem,4vw,4.5rem);gap:2rem;background:rgba(251,247,241,.96);z-index:20}.brand{gap:0;flex:0 0 auto}.site-header .brand img{width:auto;max-width:148px;height:72px;object-fit:contain}.site-header nav{display:flex;align-items:center;gap:clamp(1rem,2.5vw,2.3rem)}.site-header nav a{font-size:.78rem;font-weight:700;letter-spacing:.03em}.header-cta{background:var(--ink);padding:.65rem 1.15rem;font-size:.76rem;white-space:nowrap}.header-cta:hover,.button.primary:hover{background:var(--brown)}.section-pad{padding:clamp(4.75rem,9vw,8.5rem) clamp(1.25rem,7vw,7rem)}.eyebrow,.section-label{letter-spacing:.19em;font-size:.7rem;font-weight:800;color:var(--brown)}.section-label{margin:0 0 1rem}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--serif);line-height:1.04}h1{font-size:clamp(3.45rem,8vw,7.5rem);font-weight:400;letter-spacing:-.055em;margin:.55rem 0 1.6rem}h1 em,h2 em{font-weight:400;color:var(--rose)}h2{font-size:clamp(2.45rem,5.2vw,5rem);font-weight:400;letter-spacing:-.04em;margin:.5rem 0 1.4rem}.hero{min-height:calc(100vh - 84px);grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr);gap:7vw;background:radial-gradient(circle at 4% 85%,rgba(211,174,49,.12),transparent 27%),var(--paper)}.hero-copy{max-width:690px;position:relative;z-index:2}.hero .lead{font-family:var(--serif);font-size:clamp(1.1rem,1.7vw,1.45rem);max-width:600px;color:#594b45}.actions{margin:2rem 0 1.5rem}.button{padding:.9rem 1.35rem;font-size:.82rem}.button.primary{background:var(--ink)}.button.secondary{border:1px solid var(--ink)}.preview-note{font-size:.73rem;color:#766760;margin:0;max-width:500px}.preview-note span{color:var(--gold)}.hero-photos{position:relative;min-height:650px}.hero-main{display:block;position:absolute;inset:2% 9% 0 17%;transform:rotate(2deg);filter:drop-shadow(0 24px 35px rgba(44,31,24,.16))}.hero-main img{width:100%;height:100%;object-fit:cover;border-radius:220px 220px 16px 16px;border:10px solid var(--white)}.hero-inset{display:block;position:absolute;left:-4%;bottom:8%;width:44%;transform:rotate(-6deg);filter:drop-shadow(0 18px 25px rgba(44,31,24,.2))}.hero-inset img{border:8px solid var(--white);border-bottom-width:34px}.hero-stamp{position:absolute;right:-1%;top:6%;width:122px;height:122px;border:1px solid var(--gold);border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--paper);font-family:var(--serif);font-style:italic;font-size:.76rem;line-height:1.35;transform:rotate(8deg)}.hero-stamp:after{content:"";position:absolute;inset:6px;border:1px dotted var(--gold);border-radius:50%}.marquee{padding:1.15rem clamp(1.25rem,6vw,6rem);background:var(--ink);font-family:var(--serif);font-style:italic;font-size:clamp(1.05rem,2vw,1.5rem);text-transform:none;letter-spacing:normal}.marquee b{color:var(--gold)}.about{grid-template-columns:minmax(300px,.82fr) minmax(360px,1.18fr);gap:clamp(3rem,8vw,9rem);align-items:center;background:var(--cream)}.about-image-wrap{position:relative}.about-image-wrap picture{display:block;padding:12px;background:var(--white);box-shadow:0 26px 55px rgba(48,33,26,.16);transform:rotate(-1deg)}.about-image-wrap img{width:100%;aspect-ratio:4/5;object-fit:cover}.about-image-wrap>span{position:absolute;right:-2rem;bottom:2.5rem;padding:1rem 1.3rem;background:var(--brown);color:#fff;font-family:var(--serif);font-style:italic;font-size:.9rem;line-height:1.4;transform:rotate(3deg)}.about-copy>p:not(.eyebrow,.section-label,.honest-note){font-size:1.02rem;max-width:650px}.honest-note{margin-top:2rem;border-left:2px solid var(--gold);padding:1rem 0 1rem 1.2rem;font-size:.85rem;color:#675750}.honest-note strong{display:block;color:var(--ink)}.services{background:var(--paper)}.section-heading{margin-bottom:clamp(3rem,6vw,5.5rem)}.section-heading h2{font-size:clamp(2.45rem,5.2vw,5rem);font-weight:400}.section-heading>p{max-width:440px;color:#65554f}.product-showcase{display:grid;grid-template-columns:1fr 1fr;gap:clamp(1.5rem,3vw,3rem)}.product-card{position:relative;overflow:hidden;background:var(--cream)}.product-card picture{display:block;height:440px;overflow:hidden}.product-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover img{transform:scale(1.025)}.product-card>div{padding:2rem 2.2rem 2.4rem;position:relative}.product-number{position:absolute;right:2rem;top:2.2rem;color:var(--gold);font-family:var(--serif);font-style:italic}.product-card h3{font-size:clamp(1.8rem,3vw,2.8rem);font-weight:400;margin:0 0 .6rem}.product-card p{color:#65554f;margin:0 0 1rem}.product-card a{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:.25rem}.pricing{margin-top:clamp(5rem,9vw,9rem);border:1px solid var(--gold);padding:clamp(1.25rem,4vw,4rem);background:var(--white);box-shadow:15px 15px 0 var(--blush)}.pricing-intro{text-align:center;padding-bottom:2.5rem}.pricing-intro h3{font-size:clamp(2.2rem,4.8vw,4.4rem);font-weight:400;text-transform:uppercase;letter-spacing:.02em;margin:.4rem 0 .7rem}.pricing-intro p:last-child{font-family:var(--serif);font-style:italic;color:#66564f}.price-grid{display:grid;gap:1rem}.price-card{border:1px solid #c8a648;padding:1.4rem 1.6rem}.price-card.blush{background:#f1dfdb}.price-card-head{display:flex;gap:1rem;align-items:start}.price-card-head>span{display:grid;place-items:center;width:35px;height:35px;flex:0 0 auto;background:var(--paper);color:#a98b2e;font-family:var(--serif);font-style:italic}.price-card h4,.special-card h4{font-size:1.45rem;margin:.15rem 0}.price-card p{font-family:var(--serif);font-style:italic;color:#685b54;margin:0}.price-options{display:grid;margin:1.4rem 0 0}.price-options.three{grid-template-columns:repeat(3,1fr)}.price-options.four{grid-template-columns:repeat(4,1fr)}.price-options>div{text-align:center;border-left:1px solid rgba(169,139,46,.42);padding:.2rem .7rem}.price-options>div:first-child{border-left:0}.price-options dt{text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;color:#786525}.price-options dd{font-family:var(--serif);font-weight:700;font-size:1.65rem;line-height:1.2;margin:.3rem 0 .1rem}.price-options small,.bundle-price small{display:block;font-size:.69rem;color:#675b55}.price-card.bundle{display:flex;justify-content:space-between;align-items:center}.bundle-price{text-align:right}.bundle-price strong{font-family:var(--serif);font-size:2rem}.special-card{background:var(--ink);color:#fff;padding:1.5rem 1.8rem}.special-card>span{color:var(--gold);font-size:.65rem;text-transform:uppercase;letter-spacing:.15em}.special-card h4{font-size:clamp(1.4rem,3vw,2.1rem);margin:.45rem 0 .2rem}.special-card p{margin:0;color:#d9cec8}.pricing-note{text-align:center;font-size:.72rem;color:#74655e;margin:1.25rem 0 -1rem}.photobooth-feature{margin-top:clamp(6rem,11vw,11rem);display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;background:var(--brown);color:#fff}.photobooth-feature>div{padding:clamp(2rem,5vw,5rem)}.photobooth-feature .section-label{color:#ead07c}.photobooth-feature h3{font-size:clamp(2.2rem,4.5vw,4.2rem);font-weight:400;margin:.5rem 0 1.2rem}.photobooth-feature p:not(.section-label){color:#eadfd9}.photobooth-feature picture{height:100%;min-height:510px}.photobooth-feature img{width:100%;height:100%;object-fit:cover}.status-pill{display:inline-block;border:1px solid currentColor;border-radius:999px;padding:.55rem .9rem;text-transform:uppercase;letter-spacing:.08em;font-size:.64rem;font-weight:800;margin:0}.gallery{background:var(--ink);color:#fff}.section-heading.light .section-label{color:#d8bb62}.section-heading.light>p{color:#cdbfba}.gallery-grid{display:grid;grid-template-columns:1fr .78fr .78fr;grid-template-rows:330px 400px;gap:1rem}.gallery-item{margin:0;position:relative;overflow:hidden;background:#3a302c}.gallery-item.tall{grid-row:1/3}.gallery-item.wide{grid-column:2/4}.gallery-item.vertical{grid-column:2}.gallery-item.front{grid-column:3}.gallery-item picture,.gallery-item img{width:100%;height:100%}.gallery-item img{object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.025)}.gallery-item figcaption{position:absolute;left:1rem;bottom:1rem;padding:.45rem .7rem;background:rgba(30,24,21,.78);font-family:var(--serif);font-style:italic;font-size:.8rem}.gallery-item.vertical img{object-position:center 62%}.contact{grid-template-columns:1.15fr .85fr;gap:clamp(3rem,9vw,9rem);background:radial-gradient(circle at 90% 30%,rgba(211,174,49,.12),transparent 25%),var(--paper)}.contact-copy>p:last-child{font-size:1.03rem;max-width:680px;color:#665750}.contact-card{background:var(--cream);border:1px solid var(--line);padding:clamp(2rem,4vw,3.5rem);text-align:center;box-shadow:14px 14px 0 var(--blush)}.contact-card img{width:75px;margin:0 auto 1rem}.contact-card h3{font-size:1.9rem;font-weight:400;margin:.4rem 0 1rem}.contact-card p{color:#65564f}footer{padding:2.3rem clamp(1.25rem,5vw,5rem);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:1rem;border-top:1px solid var(--line);background:var(--white);color:var(--ink)}.footer-brand img{width:150px;height:auto}footer p{text-align:right;margin:0;font-size:.78rem;color:#685a53}.fine-print{grid-column:1/-1;text-align:center;font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;color:#8a7970;padding-top:0;border:0}
@media(max-width:1000px){.site-header nav{display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-copy{padding-top:1rem}.hero-photos{min-height:650px;max-width:620px;width:100%;margin:auto}.about{grid-template-columns:1fr 1.15fr}.product-card picture{height:360px}.photobooth-feature{grid-template-columns:1fr}.photobooth-feature picture{min-height:440px}.gallery-grid{grid-template-rows:300px 350px}}
@media(max-width:700px){html{scroll-padding-top:72px}.site-header{height:72px;padding:0 1rem}.site-header .brand img{width:auto;height:62px}.header-cta{padding:.55rem .85rem;font-size:.68rem}.section-pad{padding:4.5rem 1.1rem}h1{font-size:clamp(3.25rem,16vw,5rem)}.hero{gap:2.5rem}.hero-photos{min-height:470px}.hero-main{inset:0 4% 0 14%}.hero-inset{left:0;bottom:5%;width:48%}.hero-stamp{width:94px;height:94px;right:0;font-size:.63rem}.actions{flex-direction:column;align-items:stretch}.marquee{justify-content:center}.marquee span:nth-of-type(even),.marquee b:nth-of-type(even){display:none}.about{grid-template-columns:1fr;gap:4rem}.about-image-wrap>span{right:-.2rem}.section-heading{display:block}.section-heading>p{margin-top:1.5rem}.product-showcase{grid-template-columns:1fr}.product-card picture{height:360px}.pricing{padding:1rem;box-shadow:8px 8px 0 var(--blush)}.pricing-intro{padding:1.2rem .5rem 2rem}.pricing-intro h3{font-size:2.25rem}.price-card{padding:1rem}.price-options.three,.price-options.four{grid-template-columns:1fr 1fr;gap:1rem 0}.price-options>div:nth-child(odd){border-left:0}.price-options.three>div:last-child{grid-column:1/-1;border-left:0}.price-card.bundle{align-items:end}.special-card{padding:1.25rem}.photobooth-feature>div{padding:2.5rem 1.5rem}.photobooth-feature picture{min-height:320px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 260px 300px}.gallery-item.tall{grid-column:1/3;grid-row:auto}.gallery-item.wide{grid-column:1/3}.gallery-item.vertical{grid-column:1}.gallery-item.front{grid-column:2}.contact{grid-template-columns:1fr}.contact-card{box-shadow:8px 8px 0 var(--blush)}footer{grid-template-columns:1fr}footer p{text-align:left}.fine-print{text-align:left}}
@media(max-width:430px){.header-cta{display:none}.hero-photos{min-height:410px}.hero-main{inset:0 2% 0 12%}.hero-inset{width:52%}.hero-stamp{top:-1%;right:-2%}.product-card picture{height:300px}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:auto}.gallery-item,.gallery-item.tall,.gallery-item.wide,.gallery-item.vertical,.gallery-item.front{grid-column:auto;grid-row:auto;height:310px}.gallery-item.tall{height:420px}.gallery-item.vertical{height:390px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.header-cta,.product-card img,.gallery-item img{transition:none}}

/* Accessibility and intrinsic-image safeguards */
img{height:auto}
.hero-inset img{width:100%;height:auto}
.contact-card img{height:auto}
.product-number,.price-card-head>span{color:#725b19}
.price-options dt{color:#5f511d}
.price-options dd.saving{display:block;margin:.1rem 0 0;font-family:var(--sans);font-size:.69rem;font-weight:400;line-height:1.4;color:#675b55}
.fine-print{color:#685850}
.contact-details{display:grid;gap:.65rem;margin:0 0 1.25rem;font-style:normal}.contact-details a{width:fit-content;font-weight:700;text-underline-offset:4px;overflow-wrap:anywhere}.contact-details a:hover,.contact-details a:focus{color:var(--brown)}

/* Photo booth package pricing */
.booth-pricing{background:var(--cream);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.booth-heading{max-width:820px;margin:0 auto clamp(2.5rem,6vw,4.5rem);text-align:center}
.booth-heading h2{margin-bottom:.7rem}
.booth-heading>p:last-child{font-family:var(--serif);font-size:clamp(1.1rem,2vw,1.45rem);color:var(--brown)}
.booth-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1.25rem,3vw,2.5rem);max-width:1200px;margin:0 auto}
.booth-package{position:relative;padding:clamp(1.5rem,4vw,3rem);background:var(--white);border:1px solid var(--line);box-shadow:10px 10px 0 rgba(169,111,102,.2)}
.booth-package.featured{border-top:5px solid var(--gold)}
.booth-package-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.booth-kicker{margin:0 0 .55rem;color:var(--brown);font-size:.78rem;font-weight:700;letter-spacing:.04em}
.booth-package h3{margin:0;font-size:clamp(1.8rem,3vw,2.65rem);font-weight:400}
.booth-price{flex:none;margin:0;font-family:var(--serif);font-size:clamp(2.4rem,4vw,3.6rem);line-height:1;color:var(--ink)}
.booth-price span{font-size:.55em;vertical-align:top}
.booth-duration{display:inline-block;margin:1.5rem 0;padding:.45rem .8rem;background:var(--ink);color:var(--white);font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.booth-package h4{margin:0 0 .8rem;font-family:var(--sans);font-size:.7rem;letter-spacing:.17em;text-transform:uppercase}
.booth-includes{display:grid;gap:.65rem;margin:0;padding:0;list-style:none}
.booth-includes li{position:relative;padding-left:1.4rem}
.booth-includes li::before{position:absolute;left:0;color:#725b19;content:"✦"}
.booth-details-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:clamp(1.25rem,3vw,2.5rem);max-width:1200px;margin:clamp(2.5rem,5vw,4rem) auto 0}
.booth-detail{position:relative;padding:clamp(1.5rem,4vw,2.75rem);background:var(--paper);border:1px solid var(--line)}
.booth-detail-number{margin:0 0 1rem;color:#725b19;font-size:.72rem;font-weight:800;letter-spacing:.17em}
.booth-detail h3{margin:0 0 1.25rem;font-size:clamp(1.7rem,3vw,2.45rem);font-weight:400}
.enhancement-list{margin:0 0 1.3rem}
.enhancement-list>div{display:flex;justify-content:space-between;gap:1.5rem;padding:.8rem 0;border-top:1px solid var(--line)}
.enhancement-list>div:last-child{border-bottom:1px solid var(--line)}
.enhancement-list dt{font-weight:700}
.enhancement-list dd{margin:0;text-align:right}
.booth-note{margin-bottom:0;font-weight:700}
.booking-detail{background:var(--ink);color:var(--white)}
.booking-detail .booth-detail-number{color:#f0cf60}
.booking-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.booking-detail .button.primary{background:var(--gold);color:var(--ink)}
.booking-detail .button.primary:hover{background:#e1c25c}
.booking-detail .button.secondary{border-color:var(--white);color:var(--white)}
.booking-detail .button.secondary:hover{background:var(--white);color:var(--ink)}
.booth-disclaimer{max-width:1200px;margin:1.5rem auto 0;color:#685850;font-size:.76rem;text-align:center}

@media(max-width:800px){.booth-package-grid,.booth-details-grid{grid-template-columns:1fr}.booth-package-heading{align-items:flex-end}.booth-details-grid{gap:1.25rem}}
@media(max-width:480px){.booth-package{padding:1.35rem}.booth-package-heading{display:block}.booth-price{margin-top:1rem}.enhancement-list>div{display:block}.enhancement-list dd{margin-top:.25rem;text-align:left}.booking-actions{display:grid}.booking-actions .button{width:100%}}
