:root{--ink:#17150f;--ink2:#252118;--gold:#d8a92f;--gold-light:#f5df96;--gold-pale:#fff6d9;--cream:#fffdf6;--paper:#f9f6ea;--text:#322d22;--muted:#736b5c;--line:#e9dfc6}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font-family:'DM Sans',sans-serif;color:var(--text);background:var(--cream);-webkit-font-smoothing:antialiased}a{text-decoration:none;color:inherit}button{font:inherit}img{display:block;max-width:100%}.container{width:min(1170px,calc(100% - 50px));margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:500}h1 em,h2 em{font-weight:400;color:#b78925}section{scroll-margin-top:80px}.topbar{position:sticky;top:0;z-index:80;background:rgba(23,21,15,.97);border-bottom:1px solid #4d3f20;backdrop-filter:blur(14px)}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;font-size:11px;color:#eadbb7;letter-spacing:1.2px}.brand-mark{font-size:39px;color:var(--gold)}.brand strong{display:block;color:#fff8e4;font-family:'Playfair Display',serif;font-size:22px;letter-spacing:0}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:7px;color:#bcb091}.menu{display:flex;align-items:center;gap:25px;font-size:12px;color:#e8deca;font-weight:600}.menu a:hover{color:var(--gold-light)}.header-cta{background:var(--gold);color:#19150c!important;padding:13px 17px;border-radius:4px}.menu-button{display:none;background:none;border:0;color:#fff5d3;font-size:27px;cursor:pointer}.hero{background:radial-gradient(ellipse at 75% 50%,#5e4d1f 0,#241f15 35%,#14130f 78%);color:#fffaf0;overflow:hidden}.hero-inner{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center;padding:70px 0 85px}.eyebrow,.section-kicker{display:block;font-size:11px;font-weight:700;letter-spacing:2.3px;color:#b3862b}.eyebrow{color:#e6c45f}.eyebrow span{margin-right:8px}.hero h1{font-size:clamp(48px,5.5vw,77px);line-height:1.14;letter-spacing:-1.5px;margin:23px 0 24px}.hero h1 em{color:#f0c94e}.hero-copy>p{font-size:16px;line-height:1.9;color:#ded5c1;max-width:560px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:35px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 24px;min-height:56px;font-size:13px;font-weight:700;border-radius:4px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-gold{background:linear-gradient(115deg,#efd36a,#d6a32d);color:#19150f}.button-dark{background:#201c13;color:white}.link-light{color:#fff1c1;font-size:13px;font-weight:600;border-bottom:1px solid #92783d;padding-bottom:8px}.hero-note{display:flex;align-items:center;gap:11px;font-size:11px;line-height:1.6;color:#c9bd9d;margin-top:41px}.hero-note-icon{font-size:26px;color:#e4bd4e}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center;min-width:0}.hero-image-wrap{max-width:385px;width:100%;border:1px solid #8f7135;border-radius:200px 200px 18px 18px;padding:12px;background:linear-gradient(145deg,#3d321a,#181712);box-shadow:0 0 0 13px #ffffff08,0 20px 60px #0008}.hero-image-wrap img{width:100%;height:auto;object-fit:contain;display:block;border-radius:185px 185px 10px 10px}.hero-seal{position:absolute;bottom:-30px;right:-25px;border:1px solid #eac968;border-radius:50%;background:#241d12;color:#f0d574;display:flex;flex-direction:column;align-items:center;justify-content:center;width:116px;height:116px;font:600 12px 'DM Sans',sans-serif;letter-spacing:2px;box-shadow:0 7px 30px #0006}.hero-seal span{font-size:26px;margin:5px}.ribbon{background:#eac34e;color:#241d0b}.ribbon-list{min-height:65px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;font-weight:700;letter-spacing:1.6px}.section{padding:100px 0}.about-grid,.editorial-grid,.love-grid,.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.picture-frame{padding:12px;border:1px solid #dfc876;background:#fffaf0;box-shadow:18px 18px 0 #f4e7bd;border-radius:12px;min-width:0}.picture-frame img{width:100%;height:auto;object-fit:contain;object-position:center;border-radius:5px;display:block}.about-img{max-width:475px;position:relative;margin:0 auto 25px}.picture-label{display:block;margin:13px 0 2px;color:#9a7226;font-size:9px;text-align:center;letter-spacing:1.5px;font-weight:700}.about-copy h2,.editorial-text h2,.love-copy h2,.faq h2{font-size:clamp(37px,4.4vw,59px);line-height:1.19;letter-spacing:-1.1px;margin:20px 0 26px}.about-copy p,.editorial-text p,.love-copy p,.faq p{font-size:15px;line-height:1.95;color:var(--muted)}.text-link{display:inline-block;margin-top:15px;padding-bottom:8px;border-bottom:1px solid #bc9744;color:#3b2a12;font-size:13px;font-weight:700}.services{background:#f6f0db}.section-heading{max-width:740px;margin:0 auto 56px;text-align:center}.section-heading h2{font-size:clamp(38px,4.5vw,62px);line-height:1.19;letter-spacing:-1px;margin:19px 0 17px}.section-heading p{color:var(--muted);font-size:15px;line-height:1.9}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.service-card{background:#fffdf7;border:1px solid #e8d9b5;border-radius:8px;padding:33px 30px;min-height:350px;display:flex;align-items:flex-start;flex-direction:column;box-shadow:0 10px 30px #5f491008}.service-icon{font-size:31px;color:#b88d2f;display:grid;place-items:center;background:#fbefd0;width:58px;height:58px;border-radius:50%;margin-bottom:24px}.service-index{font-size:10px;letter-spacing:1.9px;color:#a27b31;font-weight:700}.service-card h3{font-size:27px;line-height:1.25;margin:14px 0 10px}.service-card p{font-size:13px;line-height:1.83;color:var(--muted);margin-bottom:20px}.service-link{color:#8a6119;font-size:12px;font-weight:700;margin-top:auto;border-bottom:1px solid #d1ac63;padding-bottom:5px}.editorial-grid{gap:100px}.editorial-photo{max-width:455px;margin:0 auto}.editorial-text .button{margin-top:20px}.love-section{padding:92px 0;background:#1c1a14;color:#fff9e9}.love-grid{grid-template-columns:1.08fr .92fr}.love-copy h2{color:#fff9e9}.love-copy p{color:#d8cfbd}.gold-kicker{color:#ebc24e}.love-image{max-width:400px;background:#302719;box-shadow:18px 18px 0 #5a451a;border-color:#705829;margin:0 auto}.gallery{background:#fffdf7}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;align-items:start}.gallery-piece{grid-column:span 2;margin:0;border:1px solid #e8dbbe;border-radius:10px;background:#faf4e5;padding:13px;text-align:center;overflow:hidden}.gallery-piece.gallery-landscape{grid-column:span 3}.gallery-piece img{max-width:100%;width:100%;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center;display:block;border-radius:6px}.gallery-piece figcaption{margin-top:14px;margin-bottom:5px;font-size:12px;color:#83672f;font-weight:600}.how{background:#f4eedc}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.steps-grid>div{border-top:1px solid #d9bf77;padding-top:28px}.steps-grid span{font:500 45px 'Playfair Display',serif;color:#c39b3e}.steps-grid h3{font-size:25px;margin:18px 0 12px}.steps-grid p{font-size:14px;line-height:1.85;color:var(--muted)}.faq-grid{align-items:start}.faq-items{border-top:1px solid #e1d3b3}.faq-items details{border-bottom:1px solid #e1d3b3;padding:16px 0}.faq-items summary{cursor:pointer;list-style:none;color:#282219;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:9px 0}.faq-items summary::-webkit-details-marker{display:none}.faq-items summary b{color:#bc9137;font-size:24px;font-weight:400}.faq-items details[open] summary b{transform:rotate(45deg)}.faq-items p{font-size:13px;margin:9px 0 8px}.contact-section{background:radial-gradient(circle at 50% 5%,#4d3d19,#16140f 75%);padding:95px 0;color:#fff6e2;text-align:center}.contact-inner{max-width:790px}.contact-inner h2{font-size:clamp(40px,5vw,66px);line-height:1.19;margin:21px 0 20px}.contact-inner h2 em{color:#edc956}.contact-inner>p{color:#d2c8b5;font-size:15px;line-height:1.9}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:19px;margin-top:42px}.contact-option{background:#f9e9ad;color:#211b0e;border-radius:7px;padding:24px 18px;display:flex;align-items:center;gap:14px;text-align:left;transition:transform .2s}.contact-option:hover{transform:translateY(-3px);background:#ffeeb8}.wa-icon{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:#226e45;color:white;font-size:26px;flex-shrink:0}.contact-option small{font-size:9px;display:block;font-weight:700;letter-spacing:1px;color:#816428}.contact-option strong{display:block;margin-top:5px;font-size:clamp(15px,1.55vw,20px);white-space:nowrap}.contact-arrow{margin-left:auto;font-size:23px}.contact-inner .contact-note{font-size:11px;color:#b6a88c;margin-top:20px}footer{background:#12110e;color:#cabd9a;padding:48px 0 24px;border-top:1px solid #3a321e}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-info{font-size:12px;display:flex;flex-direction:column;gap:10px}.footer-info a{color:#f0cf6a;font-weight:700}.legal{border-top:1px solid #343025;margin-top:35px;padding-top:23px;font-size:11px;line-height:1.8;color:#968c75}.float-contact{position:fixed;right:22px;bottom:22px;z-index:90;display:flex;align-items:flex-end;flex-direction:column;gap:10px}.float-contact button{border:0;background:#1e975a;color:#fff;border-radius:50px;padding:14px 20px;font-weight:700;font-size:14px;box-shadow:0 6px 27px #0006;cursor:pointer}.float-contact button:first-letter{font-size:22px}.float-menu{display:none;flex-direction:column;gap:7px;background:#fffdf4;border-radius:12px;padding:12px;box-shadow:0 8px 26px #0004}.float-menu a{padding:12px 20px;background:#e9f6eb;color:#1b6040;border-radius:8px;font-size:13px;font-weight:700}.float-contact.active .float-menu{display:flex}@media(max-width:1050px){.menu{gap:14px}.hero-inner{gap:35px}.about-grid,.editorial-grid,.love-grid,.faq-grid{gap:50px}.hero h1{font-size:56px}.contact-option{padding:17px 13px}}@media(max-width:800px){.container{width:min(100% - 34px,620px)}.nav{height:72px}.brand strong{font-size:19px}.brand small{font-size:7px}.menu-button{display:block}.menu{display:none;position:absolute;top:72px;left:0;right:0;background:#211c13;padding:22px;flex-direction:column;align-items:stretch;font-size:14px;border-top:1px solid #4c411e}.menu.open{display:flex}.menu a{padding:10px}.hero-inner,.about-grid,.editorial-grid,.love-grid,.faq-grid{grid-template-columns:1fr;gap:35px}.hero-inner{padding:55px 0 75px}.hero h1{font-size:clamp(45px,9vw,65px)}.hero-copy>p{font-size:14px}.hero-visual{max-width:390px;width:86%;margin:24px auto 25px}.hero-seal{right:-15px}.ribbon-list{display:grid;grid-template-columns:1fr 1fr;padding:20px 0;gap:15px;font-size:9px;text-align:center}.section{padding:74px 0}.about-img{order:2}.about-copy{order:1}.about-copy h2,.editorial-text h2,.love-copy h2,.faq h2{font-size:clamp(37px,8vw,49px)}.service-grid{grid-template-columns:1fr 1fr}.service-card{min-height:0;padding:26px 22px}.service-card h3{font-size:24px}.love-section{padding:75px 0}.love-image{max-width:380px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-piece,.gallery-piece.gallery-landscape{grid-column:span 1}.steps-grid{grid-template-columns:1fr;gap:22px}.faq-grid{gap:20px}.contact-options{grid-template-columns:1fr;max-width:440px;margin:36px auto 0}.contact-option strong{font-size:21px}.footer-row{flex-direction:column;align-items:flex-start}}@media(max-width:530px){.brand-mark{font-size:28px}.brand{gap:7px;font-size:8px}.brand strong{font-size:17px}.brand small{letter-spacing:1.3px}.hero-inner{padding-top:40px}.hero-actions{gap:22px}.hero-visual{width:88%}.hero-seal{width:84px;height:84px;font-size:10px;right:-16px;bottom:-14px}.service-grid{grid-template-columns:1fr}.service-card{padding:27px;min-height:260px}.gallery-grid{grid-template-columns:1fr}.gallery-piece,.gallery-piece.gallery-landscape{grid-column:span 1}.gallery-piece{max-width:460px;width:100%;margin:auto}.picture-frame{box-shadow:10px 10px 0 #f4e7bd}.love-image{box-shadow:10px 10px 0 #5a451a}.contact-inner h2{font-size:42px}.float-contact{right:12px;bottom:12px}.float-contact button{padding:13px 15px}.float-contact button span{font-size:12px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
