:root{--cream:#f8f5ef;--paper:#fffdfa;--forest:#243b2e;--forest-deep:#18281e;--green:#55705e;--gold:#ae8353;--rose:#eedbd4;--ink:#292b27;--muted:#6c6c63;--border:#dfd9ce;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;background:var(--cream);color:var(--ink);font:15.5px/1.7 var(--sans);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #a77e46;outline-offset:3px}.wrap{width:min(1250px,calc(100% - 88px));margin:auto}.skip{position:absolute;left:12px;top:-80px;z-index:101;background:white;padding:10px}.skip:focus{top:12px}.header{position:sticky;top:0;z-index:90;background:rgba(248,245,239,.96);border-bottom:1px solid rgba(34,45,37,.1);backdrop-filter:blur(18px)}.nav-shell{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:26px}.brand{display:flex;align-items:center;flex-direction:column;min-width:152px;line-height:1}.brand-script{font:italic 49px/.85 var(--serif);letter-spacing:-3px;color:var(--forest)}.brand-star{font-size:18px;color:var(--gold);vertical-align:top;letter-spacing:0}.brand-sub{font:600 10px var(--sans);letter-spacing:3.5px;margin-top:10px}.desktop-nav{display:flex;gap:30px;align-items:center;font-size:13px;font-weight:600;white-space:nowrap}.desktop-nav a,.footer a,.text-social{transition:color .2s}.desktop-nav a:hover,.text-social:hover,.footer a:hover{color:var(--gold)}.nav-action{display:flex;align-items:center;gap:20px}.text-social{font-size:12px;font-weight:700}.text-social span{color:var(--gold)}.btn{border:1px solid transparent;display:inline-flex;justify-content:center;align-items:center;gap:22px;padding:13px 21px;font-weight:650;font-size:13px;line-height:1.25;transition:background .25s,transform .25s,border-color .25s;min-height:46px}.btn:hover{transform:translateY(-2px)}.btn-solid{background:var(--forest);color:#fff}.btn-solid:hover{background:var(--forest-deep)}.btn-light{background:rgba(251,250,246,.78);color:var(--forest);border-color:#a9a897}.btn-light:hover{background:#fff}.btn-outline{border-color:var(--forest);color:var(--forest)}.btn-outline:hover{background:var(--forest);color:white}.btn-lg{padding:16px 22px}.menu-toggle{display:none;border:0;background:transparent;min-width:42px;min-height:42px;padding:9px}.menu-toggle span{display:block;width:24px;height:2px;background:var(--forest);margin:5px 0}.mobile-menu{display:none}.mobile-menu[hidden]{display:none!important}.hero{position:relative;min-height:675px;isolation:isolate;overflow:hidden}.hero-media,.hero-gradient{position:absolute;inset:0}.hero-media{left:43%;z-index:-3}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center 53%}.hero-gradient{z-index:-2;background:linear-gradient(90deg,#f8f5ef 0%,#f8f5ef 30%,rgba(248,245,239,.94) 40%,rgba(248,245,239,.48) 52%,transparent 72%)}.hero-inner{position:relative;min-height:623px;display:flex;align-items:center;justify-content:space-between;gap:35px}.hero-copy{max-width:620px;padding:58px 0 72px}.overline,.eyebrow{font-size:11px;font-weight:800;letter-spacing:2.7px;color:#956d42}.overline{display:flex;align-items:center;gap:13px;margin-bottom:28px}.line{width:27px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1,h2,.quote-band p{font-family:var(--serif);font-weight:400;line-height:1.13;letter-spacing:-2px}h1{font-size:clamp(48px,5.45vw,86px);margin:0 0 28px;color:var(--forest);max-width:640px}h1 em,h2 em,.quote-band em{font-weight:400;color:#a77b4b}.hero-copy>p{max-width:465px;font-size:16px;line-height:1.9;color:#3d4039;margin-bottom:30px}.hero-copy strong{font-weight:750}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-stamp{position:absolute;right:0;bottom:68px;width:118px;height:118px;border-radius:50%;background:var(--forest);color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;box-shadow:0 10px 20px #20372637;border:4px solid #fff7}.hero-stamp span{font:54px/.93 var(--serif)}.hero-stamp small{font-size:9px;line-height:1.35;letter-spacing:1.4px;margin-top:4px}.hero-footer{position:relative;background:var(--forest);color:#edece0}.hero-footer .wrap{min-height:52px;display:flex;align-items:center;gap:19px;font-size:12px;letter-spacing:1.1px;text-transform:uppercase}.hero-footer i{font-style:normal;color:#c7ad83}.hero-footer a{margin-left:auto;text-transform:none;letter-spacing:0;font-size:13px}.hero-footer a span{font-size:17px;margin-left:9px}.section{padding:112px 0}.intro-section{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1fr 1.14fr;align-items:center;gap:min(10vw,132px)}.intro-image-wrap{position:relative;max-width:470px;margin-left:34px}.intro-image{width:100%;aspect-ratio:3/3.65;object-fit:cover;object-position:center 28%}.portrait-label{position:absolute;bottom:0;left:0;right:0;background:var(--cream);padding:14px 17px;display:flex;align-items:center;justify-content:space-between;gap:12px}.portrait-label span{font:italic 18px var(--serif)}.portrait-label small{font-size:9px;letter-spacing:1.6px;color:var(--muted)}.portrait-flower{position:absolute;font-size:84px;line-height:1;color:var(--gold);top:-46px;right:-40px;font-weight:200}.intro-text{max-width:610px}.eyebrow{margin-bottom:18px}.intro-text h2,.section h2{font-size:clamp(37px,4vw,60px);color:var(--forest);margin-bottom:28px}.intro-text h2 em,.section h2 em{display:inline-block}.intro-text p:not(.eyebrow){color:#62625c;font-size:15px;line-height:1.9}.intro-text .lead{font-size:18px!important;color:#343c32!important}.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid var(--gold);padding-bottom:6px;margin-top:15px;font-weight:700;font-size:13px;color:var(--forest)}.text-link:hover{color:var(--gold)}.text-link span{font-size:19px}.quote-band{background:var(--rose);padding:42px 0}.quote-band .wrap{display:flex;align-items:center;justify-content:center;gap:55px}.quote-band p{text-align:center;margin:0;font-size:clamp(30px,3.5vw,51px);color:var(--forest)}.mini-flower{color:#a98664;font-size:30px}.services-section{background:var(--cream)}.section-top,.portfolio-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:40px}.section-top>p,.portfolio-top>p{max-width:315px;color:var(--muted);font-size:14px;margin:0 0 12px}.section-top h2,.portfolio-top h2{margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service-card{position:relative;background:var(--paper);padding:33px 35px 29px;border:1px solid var(--border);display:flex;flex-direction:column;min-height:360px;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 40px #253d2b10}.service-no{font-size:11px;letter-spacing:2px;color:var(--gold)}.service-icon{font:58px/1 var(--serif);color:#ae8759;text-align:center;margin:9px 0 22px}.service-card h3{font:28px/1.15 var(--serif);color:var(--forest);letter-spacing:-.7px;min-height:65px;margin:0 0 14px}.service-card p{font-size:14px;color:var(--muted);line-height:1.7;margin-bottom:28px}.service-card a{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:14px;border-top:1px solid var(--border);font-size:12px;font-weight:700;color:var(--forest)}.service-card a span{font-size:20px;color:var(--gold)}.service-note{text-align:center;color:var(--muted);font-size:13px;margin:24px 0 0}.portfolio-section{background:#e9e9df}.portfolio-top{margin-bottom:27px}.filters{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:25px}.filter{border:1px solid #bac2b5;background:transparent;color:var(--forest);padding:9px 16px;font-size:12px;font-weight:700;transition:.2s}.filter:hover,.filter.active{background:var(--forest);color:white;border-color:var(--forest)}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:225px;gap:11px}.gallery-item{border:0;padding:0;position:relative;overflow:hidden;display:block;background:#d8d3cb;text-align:left}.gallery-item[hidden]{display:none!important}.gallery-item.gallery-tall{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .45s,filter .3s}.gallery-item:hover img{transform:scale(1.04);filter:brightness(.87)}.gallery-item:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#0008);pointer-events:none}.gallery-item span{position:absolute;bottom:15px;left:17px;right:15px;z-index:1;color:white;font-size:12px;font-weight:700;letter-spacing:.5px;display:flex;align-items:center;justify-content:space-between}.gallery-item b{font-size:20px;font-weight:400}.portfolio-instagram{margin-top:30px;display:flex;justify-content:space-between;align-items:center;gap:20px}.portfolio-instagram>span{font-family:var(--serif);font-style:italic;font-size:23px;color:var(--forest)}.process-section{background:var(--forest);color:white}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%}.process-section .eyebrow{color:#c9a87e}.process-section h2{color:white}.process-section h2 em{color:#dfc5a1}.process-heading>p:not(.eyebrow){max-width:440px;color:#ccd2c8}.process-section .text-link{color:#eacfae;border-color:#bfa37f}.steps{border-top:1px solid #ffffff40}.step{display:grid;grid-template-columns:65px 1fr;gap:25px;border-bottom:1px solid #ffffff40;padding:27px 0}.step>span{font:italic 38px var(--serif);color:#c2a07b}.step h3{font:25px var(--serif);margin-bottom:5px}.step p{font-size:14px;color:#cbd3cc;line-height:1.65;margin:0}.contact-section{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:min(8vw,100px);align-items:start}.contact-aside h2{margin-bottom:25px}.contact-aside>p:not(.eyebrow){max-width:435px;color:var(--muted);font-size:16px}.contact-person{display:flex;gap:16px;align-items:center;margin:36px 0}.contact-person img{width:77px;height:77px;object-fit:cover;object-position:center top;border-radius:50%}.contact-person strong{display:block;color:var(--forest)}.contact-person span{font-size:12px;color:var(--muted)}.contact-links{display:grid;gap:9px}.contact-links a{color:var(--forest);font-size:13px;font-weight:700;width:fit-content;border-bottom:1px solid var(--border)}.contact-form-wrap{padding:37px;background:var(--cream);border:1px solid var(--border)}.form-kicker{font:26px var(--serif);color:var(--forest);margin-bottom:27px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}form label{display:block;font-size:12px;font-weight:750;color:#414b40;margin-bottom:16px}form label span{color:#a45d48}form label small{font-size:10px;font-weight:400;color:#81837c}input,textarea,select{display:block;width:100%;margin-top:8px;padding:12px 13px;background:#fff;border:1px solid #d4d6cd;border-radius:0;color:#333d34;min-height:46px;font-size:13px}textarea{min-height:125px;resize:vertical}input::placeholder,textarea::placeholder{color:#92958b}.form-info,.form-alternative{font-size:11px;color:var(--muted);line-height:1.65;margin:4px 0 15px}.btn-wide{width:100%;justify-content:space-between}.form-feedback{font-size:12px;min-height:0;margin:8px 0 0;color:var(--forest)}.form-alternative{margin-top:9px}.form-alternative a{text-decoration:underline}.footer{background:#19281f;color:#edeee8}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1.1fr;gap:60px;padding:58px 0 65px}.footer-logo{font:italic 67px/.8 var(--serif);letter-spacing:-3px}.footer-logo span{font-size:23px;color:#c1a17a;vertical-align:top;letter-spacing:0}.footer-main p{font-size:13px;color:#c3cfc5;margin:24px 0 0}.footer-nav,.footer-info{display:flex;flex-direction:column;gap:9px;font-size:13px}.footer-info{align-items:flex-start}.footer-info span{font-family:var(--serif);font-size:23px;font-style:italic;line-height:1.25;margin-bottom:12px}.footer-bottom{border-top:1px solid #ffffff2c;display:flex;justify-content:space-between;gap:20px;padding:18px 0 22px;color:#aebbb2;font-size:11px}.lightbox{background:#13221aea;color:white;border:0;padding:40px;max-width:min(92vw,1060px);max-height:96vh;box-shadow:0 28px 90px #0008}.lightbox::backdrop{background:#0c1510d9}.lightbox img{max-width:100%;max-height:77vh;width:auto;height:auto;margin:auto;object-fit:contain}.lightbox p{text-align:center;margin:9px 0 0;font-size:13px}.lightbox-close{position:absolute;right:8px;top:0;background:transparent;color:white;border:0;font-size:35px;line-height:1;padding:12px}.privacy-hero{padding:85px 0 45px;background:var(--forest);color:#fff}.privacy-hero h1{font-size:clamp(39px,5vw,65px);color:white;max-width:none}.privacy-page{background:var(--paper);padding:60px 0 90px}.legal-content{max-width:800px}.legal-content h2{font-size:28px;letter-spacing:-.5px;color:var(--forest);margin:32px 0 12px}.legal-content p,.legal-content li{color:#565d55;font-size:15px}.legal-content a{text-decoration:underline}
@media(max-width:1100px){.desktop-nav{gap:17px;font-size:12px}.text-social{display:none}.nav-shell{gap:14px}.wrap{width:min(1200px,calc(100% - 60px))}.intro-grid{gap:70px}.gallery-grid{grid-auto-rows:200px}.service-card{padding:28px 25px}.hero-stamp{right:12px}}
@media(max-width:850px){.nav-shell{min-height:78px}.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block}.mobile-menu{display:flex;flex-direction:column;background:var(--cream);border-top:1px solid var(--border);padding:8px 30px 20px}.mobile-menu a{padding:12px 0;font-size:15px;border-bottom:1px solid #ddd7cc}.wrap{width:calc(100% - 44px)}.hero{min-height:620px}.hero-inner{min-height:567px}.hero-media{left:27%}.hero-gradient{background:linear-gradient(90deg,#f8f5ef 0%,#f8f5efed 22%,#f8f5efb8 53%,#f8f5ef2e 94%)}.hero-copy{max-width:520px}.hero-stamp{right:12px;bottom:22px;width:100px;height:100px}.hero-stamp span{font-size:43px}.intro-grid{gap:40px}.intro-image-wrap{margin-left:0}.intro-text .lead{font-size:16px!important}.service-grid{gap:12px}.service-card{padding:24px 20px}.service-card h3{font-size:24px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item.gallery-tall{grid-row:span 2}.contact-grid{gap:35px}.contact-form-wrap{padding:26px}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:650px){body{font-size:14px}.wrap{width:calc(100% - 36px)}.brand-script{font-size:41px}.brand-sub{font-size:9px}.section{padding:74px 0}.hero{min-height:auto}.hero-media{left:0;top:0;height:100%;opacity:.48}.hero-photo{object-position:58% center}.hero-gradient{background:linear-gradient(90deg,#f8f5efed 0%,#f8f5efce 53%,#f8f5ef82 100%)}.hero-inner{min-height:600px;align-items:center}.hero-copy{padding:40px 0 80px}.hero-copy h1{font-size:clamp(49px,12.5vw,70px);letter-spacing:-2.6px}.hero-copy>p{max-width:440px;font-size:15px}.overline{font-size:10px;letter-spacing:1.8px}.hero-buttons{flex-direction:column;max-width:355px}.hero-buttons .btn{justify-content:space-between}.hero-stamp{width:85px;height:85px;right:1px;bottom:9px;border-width:2px}.hero-stamp span{font-size:37px}.hero-stamp small{font-size:7px}.hero-footer .wrap{min-height:55px;gap:10px;font-size:9px;letter-spacing:0}.hero-footer a{display:none}.intro-grid,.process-grid,.contact-grid{grid-template-columns:1fr}.intro-image-wrap{width:min(440px,85%);margin:0 auto 32px}.portrait-label{padding:10px}.portrait-label span{font-size:16px}.portrait-label small{font-size:8px}.portrait-flower{font-size:58px;right:-24px;top:-29px}.intro-text h2,.section h2{font-size:clamp(36px,10vw,48px)}.quote-band{padding:34px 0}.quote-band .wrap{gap:15px}.quote-band p{font-size:29px}.mini-flower{font-size:17px}.section-top,.portfolio-top{display:block}.section-top>p,.portfolio-top>p{max-width:450px;margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:unset;padding:26px 27px}.service-card h3{min-height:unset}.service-icon{text-align:left;margin:8px 0 16px;font-size:49px}.service-card p{margin-bottom:18px}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:180px;gap:7px}.gallery-item.gallery-tall{grid-row:span 2}.gallery-item span{font-size:11px;left:10px;right:10px;bottom:9px}.filters{gap:7px}.filter{padding:9px 12px;font-size:11px}.portfolio-instagram{align-items:stretch;flex-direction:column}.portfolio-instagram>span{font-size:22px}.portfolio-instagram .btn{justify-content:space-between}.process-grid{gap:40px}.steps .step{grid-template-columns:46px 1fr;gap:16px}.step>span{font-size:31px}.contact-person{margin:24px 0}.contact-form-wrap{padding:23px 18px}.form-kicker{font-size:24px}.footer-main{grid-template-columns:1fr 1fr;gap:32px;padding:50px 0}.footer-main>div:first-child{grid-column:span 2}.footer-logo{font-size:55px}.footer-info span{font-size:19px}.footer-bottom{flex-wrap:wrap}.footer-bottom span:last-child{display:none}.lightbox{padding:35px 12px 12px;max-width:95vw}.privacy-hero{padding:55px 0 30px}.privacy-page{padding:35px 0 60px}}
@media(max-width:370px){.hero-copy h1{font-size:45px}.hero-stamp{display:none}.hero-footer .wrap{font-size:8px}.filters{gap:4px}.filter{padding:9px 8px}.gallery-grid{grid-auto-rows:145px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
