
:root{--ink:#342b2b;--pink:#f4e6e3;--cream:#fcf9f5;--gold:#aa8156;--line:#e9ded6}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',Arial,sans-serif;font-size:15px}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,.brand{font-family:Italiana,Georgia,serif;font-weight:400}h2{font-size:clamp(36px,5vw,62px);line-height:1.05;margin:10px 0 22px}h3{font-size:30px;margin:12px 0}p{line-height:1.75}.eyebrow{color:#9b795e;letter-spacing:.25em;font-size:11px;font-weight:700;text-transform:uppercase}.center{text-align:center}.top{background:#ba8e82;color:white;text-align:center;font-size:11px;letter-spacing:.15em;text-transform:uppercase;padding:10px}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1250px;margin:auto;padding:20px 28px}.brand{text-decoration:none;font-size:25px;line-height:.92;white-space:nowrap}.brand small{display:block;font-family:'DM Sans',sans-serif;font-size:9px;letter-spacing:.31em;margin-top:7px;text-align:center}.links{display:flex;gap:23px;align-items:center}.links a{text-decoration:none;font-size:12px;letter-spacing:.07em;text-transform:uppercase}.btn{display:inline-block;text-decoration:none;background:#8e6654;color:white;padding:16px 25px;letter-spacing:.13em;text-transform:uppercase;font-size:11px;font-weight:700;border:1px solid #8e6654;transition:background .2s}.btn:hover{background:#6e483c}.btn.outline{background:transparent;color:#6e483c}.btn.outline:hover{background:#f4e5df}.hero{position:relative;min-height:500px;display:flex;align-items:center;background:#f7eee8;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;background:url('hero.jpg') center 38%/cover no-repeat}.hero-inner{display:none}.hero h1{font-size:clamp(56px,7vw,105px);line-height:.98;max-width:610px;margin:18px 0}.hero p{max-width:450px;font-size:16px}.hero-buttons{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.section{padding:90px 28px}.wrap{max-width:1150px;margin:auto}.intro{text-align:center;max-width:780px;margin:auto}.intro p{font-size:16px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.card{background:white}.card img{width:100%;height:330px;object-fit:cover}.card-text{padding:26px 28px 34px}.card-text p{margin-bottom:22px}.story{background:#f3e7e3}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.split img{width:100%;height:540px;object-fit:cover}.benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:45px;text-align:center}.benefits>div{border-top:1px solid #d9c2b7;padding:25px}.benefits h3{font-size:25px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:42px}.gallery img{aspect-ratio:3/4;width:100%;object-fit:cover}.banner{background:#866557;color:white;padding:75px 25px;text-align:center}.banner h2{font-size:54px}.banner p{max-width:650px;margin:0 auto 25px}.banner .btn{background:white;color:#775347;border-color:white}.faq{max-width:780px;margin:auto}.faq details{border-bottom:1px solid var(--line);padding:22px 5px}.faq summary{cursor:pointer;font-weight:600}.faq p{margin-bottom:0}.contact{background:#f5ebe5}.footer{background:#302928;color:#f8ede5;padding:50px 25px;text-align:center}.footer .brand{display:inline-block;font-size:31px}.footer p{font-size:12px;color:#d7c8bf}.mobile-book{display:none}@media(max-width:800px){.links{display:none}.nav{padding:18px}.hero{min-height:590px;align-items:flex-end}.hero:before{background:linear-gradient(0deg,rgba(255,250,245,.98),rgba(255,250,245,.7) 48%,rgba(255,250,245,.07)),url('hero.jpg') 62% top/cover}.hero-inner{padding:60px 24px}.hero h1{font-size:61px}.section{padding:65px 19px}.grid3,.benefits{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:27px}.split img{height:390px}.gallery{grid-template-columns:1fr 1fr}.card img{height:340px}.banner h2{font-size:42px}.mobile-book{display:block;position:fixed;right:15px;bottom:15px;z-index:5;box-shadow:0 5px 20px #0003}}

/* Pricing and reweld information */
.pricing-section{background:#fffdfa}.pricing-table-wrap{margin-top:40px;overflow-x:auto;border:1px solid var(--line);background:#fff}.pricing-table{width:100%;border-collapse:collapse;text-align:center;min-width:540px}.pricing-table th,.pricing-table td{padding:19px 16px;border-bottom:1px solid #eee4de}.pricing-table thead th{background:#f2e3de;color:#735043;font-size:12px;text-transform:uppercase;letter-spacing:.13em}.pricing-table tbody th{text-align:left;font-size:14px;font-weight:600}.pricing-table tbody tr:nth-child(even){background:#fffbf8}.pricing-table tbody tr:last-child td,.pricing-table tbody tr:last-child th{border-bottom:0}.pricing-note{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:26px}.pricing-note>div{background:#f8efea;padding:23px 28px}.pricing-note strong{font-family:Italiana,Georgia,serif;font-size:25px;font-weight:400}.pricing-note p{font-size:13px;margin:8px 0 0}.pricing-action{margin-top:30px}.reweld-section{background:#f3e7e3}.reweld-layout{align-items:stretch}.policy-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.policy-card{background:#fffcf9;padding:22px}.policy-label{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#99745c;margin-bottom:10px}.policy-card strong{display:block;font-family:Italiana,Georgia,serif;font-weight:400;font-size:26px}.policy-card p{font-size:13px;margin:8px 0 0}.policy-fine{font-size:13px;margin-bottom:25px}.reweld-visual img{height:100%;min-height:520px;object-fit:cover}.faq .center p{color:#77655d;margin-top:-6px;margin-bottom:28px}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';font-size:24px;color:#a57a68;font-weight:400}.faq details[open] summary:after{content:'−'}
@media(max-width:800px){.pricing-note,.policy-cards{grid-template-columns:1fr}.pricing-table th,.pricing-table td{padding:15px 12px}.reweld-visual img{min-height:0;height:340px}.reweld-layout{gap:27px}}

.price-materials{text-align:center;margin:18px auto 20px;max-width:850px;line-height:1.8;font-size:.88rem;color:#6a554c}.legacy-pricing{text-align:center;background:#fffbf8;border:1px solid #d9c29f;border-radius:12px;padding:26px 22px;margin:24px auto 30px;max-width:890px}.legacy-pricing h3{font-family:Italiana,Georgia,serif;font-size:2rem;font-weight:400;margin:0 0 10px}.legacy-pricing p{margin:9px auto;line-height:1.65;max-width:620px}

/* Navigation & booking refinements: intentional CTAs, mobile wayfinding */
section[id],div[id]{scroll-margin-top:18px}
.intro-book{margin-top:24px}
.collection-discover{margin-top:28px}
.text-link{display:inline-block;color:#795243;text-decoration:none;font-weight:700;letter-spacing:.04em;border-bottom:1px solid #b18a75;padding-bottom:5px;transition:color .2s}
.text-link:hover{color:#ad755a}
.mobile-menu{display:none}
a:focus-visible,summary:focus-visible{outline:3px solid #b48d75;outline-offset:4px}
@media(max-width:800px){
 .mobile-menu{display:block;margin-left:auto;position:relative;z-index:8}
 .mobile-menu summary{cursor:pointer;text-transform:uppercase;list-style:none;font-size:11px;font-weight:700;letter-spacing:.13em;color:#795243;padding:12px 11px;border:1px solid #dbcabe}
 .mobile-menu summary::-webkit-details-marker{display:none}
 .mobile-menu summary:after{content:' ☰';font-size:13px}
 .mobile-menu[open] summary:after{content:' ✕'}
 .mobile-menu nav{position:absolute;top:calc(100% + 9px);right:0;width:min(300px,80vw);padding:12px;background:#fffdfa;box-shadow:0 12px 38px #342b2b25;border:1px solid #e6d8ce;display:flex;flex-direction:column}
 .mobile-menu nav a{padding:11px 12px;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:12px;border-bottom:1px solid #f1e6e0}
 .mobile-menu nav a:last-child{border-bottom:0}
 .mobile-book{display:block}
 .intro-book{margin-top:18px}
}


/* Visit us: keep the entire horizontal studio photo visible, including its lettering. */
.contact .visit-layout{display:flex;flex-direction:column;gap:30px;align-items:stretch}
.contact .visit-layout>div{max-width:760px;margin:0 auto;text-align:center}
.contact .visit-photo{display:block;width:100%;max-width:1100px;height:auto;max-height:none;object-fit:contain;margin:0 auto}
.contact .visit-address{display:block;margin-top:18px;font-style:normal;font-weight:600;letter-spacing:.03em;color:#795243}
.footer .footer-address{font-size:15px;letter-spacing:.025em;color:#fff4ec;margin:15px 0}
@media(max-width:800px){
 .contact .visit-layout{gap:22px}
 .contact .visit-photo{height:auto;max-height:none;object-fit:contain}
 .contact .visit-address{font-size:14px;line-height:1.7}
}

/* Private party inquiry form */
.party-inquiry-section{background:#faf3ef;scroll-margin-top:100px}.inquiry-wrap{display:grid;grid-template-columns:minmax(0, .85fr) minmax(0,1.15fr);gap:55px;align-items:start}.inquiry-copy h2{margin-top:12px}.inquiry-note{margin-top:22px;font-size:14px}.inquiry-note a{color:#896a51;text-decoration:underline;text-underline-offset:3px}.party-form{background:#fff;padding:32px;border:1px solid #eddcd3;border-radius:4px;box-shadow:0 12px 35px rgba(88,61,47,.06)}.party-form label{display:flex;flex-direction:column;font-size:13px;font-weight:600;color:#45332c;gap:8px;margin-bottom:16px}.party-form label span{color:#a85c60}.party-form input,.party-form select,.party-form textarea{box-sizing:border-box;width:100%;border:1px solid #d9c9c1;border-radius:3px;padding:12px;font:400 15px 'DM Sans',sans-serif;color:#382e29;background:#fff}.party-form input:focus,.party-form select:focus,.party-form textarea:focus{outline:2px solid #b6a080;outline-offset:1px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.party-form .inquiry-submit{border:0;cursor:pointer;margin-top:4px}.form-fine{font-size:11px;color:#78675e;line-height:1.6;margin-top:15px}@media(max-width:760px){.inquiry-wrap{grid-template-columns:1fr;gap:24px}.party-form{padding:22px}.form-grid{grid-template-columns:1fr}}


/* v10: Four-page site additions, keeping original colors, type, photography and spacing */
:root {--blush:#f3e7e3}
.nav .links{gap:16px}.nav .brand{font-size:23px}.nav .links a:not(.btn){font-size:11px}
.nav .links [aria-current="page"]{color:#866557;border-bottom:1px solid #866557;padding-bottom:4px}
.mobile-menu nav [aria-current="page"]{background:#f9efeb;color:#6e483c}
.breadcrumbs{font-size:12px;letter-spacing:.06em;color:#8e7465;margin-bottom:22px}
.breadcrumbs a{color:inherit;text-decoration:none;border-bottom:1px solid #c7b6ac}
.sub-hero{background:#f6ebe6;overflow:hidden}.sub-hero .split{gap:40px;min-height:500px}
.sub-hero-copy{padding:68px 8px 68px 0}.sub-hero h1{font-size:clamp(50px,6.5vw,82px);line-height:1.04;margin:13px 0 22px;font-family:Italiana,Georgia,serif;font-weight:400}
.sub-hero p{font-size:16px;max-width:490px}.sub-hero .sub-hero-image{height:540px;object-fit:cover;width:100%;}
.sub-hero-buttons{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-top:26px}
.sub-hero .text-link{font-size:12px}
.soft{background:#f8f0ec}.white{background:#fffdfa}.narrow{max-width:760px;margin:0 auto}
.section-lead{max-width:780px;margin:0 auto 34px;text-align:center}.section-lead p{color:#6e5f58}
.small-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:40px}
.small-card{background:white;border:1px solid #eaded6;padding:30px;min-height:208px}.small-card .eyebrow{font-size:10px}.small-card h3{font-size:29px}
.numbered-step{position:relative}.numbered-step .step-num{display:inline-block;font-family:Italiana,Georgia,serif;color:#b98c75;font-size:42px;line-height:1;margin-bottom:6px}
.editorial-figure{margin:0}.editorial-figure img{object-fit:cover;width:100%;height:500px}.editorial-figure figcaption{color:#7c6b61;font-size:12px;margin-top:10px}
.cta-panel{background:#8e6654;text-align:center;padding:58px 25px;color:#fff}.cta-panel h2{font-size:49px}.cta-panel .btn{background:#fff;color:#755243;border-color:#fff}
.link-line{display:flex;justify-content:center;gap:20px;flex-wrap:wrap;margin-top:24px}
.fine-print{font-size:12px;color:#7a6b63}.feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.feature-grid img{width:100%;height:500px;object-fit:cover}.feature-grid p{font-size:15px}
.image-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:42px}.image-grid img{width:100%;height:310px;object-fit:cover}
.banner-sub{background:#f0ded5;padding:48px 25px;text-align:center}
.footer-nav{display:flex;justify-content:center;gap:23px;flex-wrap:wrap;margin:22px auto 0}.footer-nav a{font-size:11px;color:#eedbd0;text-decoration:none;letter-spacing:.05em}
.footer-nav a:hover{text-decoration:underline}.footer-address a{color:inherit;text-decoration:none}
.cta-inline{margin-top:23px}.mini-badge{display:inline-block;border:1px solid #bf9c83;border-radius:50px;color:#866557;padding:8px 15px;font-size:11px;letter-spacing:.11em;text-transform:uppercase}
.tinted-line{border:0;border-top:1px solid #e4d5cb;margin:38px 0}
.home-see-more{margin-top:18px}.home-see-more a{margin:0 9px 8px}
.intro .home-intro-heading{font-size:clamp(36px,5vw,62px);line-height:1.05;margin:10px 0 22px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1150px){.links{display:none}.mobile-menu{display:block;margin-left:auto;position:relative;z-index:8}.mobile-menu summary{cursor:pointer;text-transform:uppercase;list-style:none;font-size:11px;font-weight:700;letter-spacing:.13em;color:#795243;padding:12px 11px;border:1px solid #dbcabe}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary:after{content:' ☰';font-size:13px}.mobile-menu[open] summary:after{content:' ✕'}.mobile-menu nav{position:absolute;top:calc(100% + 9px);right:0;width:min(300px,80vw);padding:12px;background:#fffdfa;box-shadow:0 12px 38px #342b2b25;border:1px solid #e6d8ce;display:flex;flex-direction:column}.mobile-menu nav a{padding:11px 12px;text-decoration:none;text-transform:uppercase;letter-spacing:.07em;font-size:12px;border-bottom:1px solid #f1e6e0}.mobile-menu nav a:last-child{border-bottom:0}}
@media(max-width:800px){.sub-hero .split,.feature-grid{grid-template-columns:1fr;gap:0}.sub-hero-copy{padding:45px 7px 34px}.sub-hero .sub-hero-image{height:365px}.sub-hero h1{font-size:54px}.small-cards{grid-template-columns:1fr;gap:15px}.small-card{min-height:0}.feature-grid img{height:360px}.image-grid{grid-template-columns:1fr 1fr}.image-grid img{height:230px}.cta-panel h2{font-size:42px}.section-lead{text-align:left}.footer-nav{gap:12px}}
@media(max-width:480px){.sub-hero h1{font-size:46px}.image-grid{grid-template-columns:1fr}.image-grid img{height:300px}.pricing-table-wrap{margin-left:-12px;margin-right:-12px}.nav .brand{font-size:20px}}
