@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-amber-50:#fffbeb;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-amber-50:lab(98.6252% -.635922 8.42309)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.absolute{position:absolute}.z-10{z-index:10}.z-30{z-index:30}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.flex{display:flex}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing)*2)}.border{border-style:var(--tw-border-style);border-width:1px}.border-8{border-style:var(--tw-border-style);border-width:8px}.border-amber-50{border-color:var(--color-amber-50)}}@font-face{font-family:Knicknaks;src:url(/fonts/knicknaks.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}:root{--cream:#fff8ef;--white:#fff;--olive-900:#424d1a;--olive-800:#59652f;--olive-600:#7d8950;--olive-300:#bfcd8c;--olive-100:#dbe9a6;--blush-700:#81515e;--blush-500:#b9788a;--blush-300:#f3b6c5;--blush-100:#ffd9e1;--text:#1e1b15;--muted:#68675e;--surface-soft:#faf3e8;--surface-muted:#f4ede2;--border:#d8d2c7;--font-primary:"Knicknaks","Playfair Display",Georgia,serif;--font-secondary:"Montserrat","Avenir Next",Avenir,Arial,sans-serif;--font-display:var(--font-primary);--font-body:var(--font-secondary);--radius-pill:999px;--radius-field:13px;--radius-card:26px;--shadow-soft:0 20px 60px #424d1a1f;--shadow-card:0 18px 50px #424d1a1a;--shadow-lift:0 24px 60px #424d1a29}*{box-sizing:border-box;min-width:0}html{scroll-behavior:smooth;width:100%;max-width:100%;scroll-padding-top:90px;overflow-x:hidden}body{background:var(--cream);width:100%;max-width:100%;color:var(--text);font-family:var(--font-body);margin:0;line-height:1.7;overflow-x:hidden}main{width:100%;overflow-x:clip}.font-primary{font-family:var(--font-primary)!important}.font-secondary{font-family:var(--font-secondary)!important}body::selection{background:var(--blush-300)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{object-fit:cover}:focus-visible{outline:3px solid var(--blush-500);outline-offset:4px}.container{width:min(100% - 40px,1240px);margin-inline:auto}.section{padding:clamp(88px,10vw,150px) 0;position:relative;overflow-x:clip}.eyebrow{color:var(--blush-700);letter-spacing:.22em;margin:0 0 18px;font-size:.72rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2,blockquote{font-family:var(--font-display);letter-spacing:-.025em;font-weight:500}h2{color:var(--olive-900);margin-bottom:24px;font-size:clamp(2.45rem,5vw,4.8rem);line-height:1.05}.section-heading{max-width:760px;margin-bottom:58px}.section-heading--center{text-align:center;margin-inline:auto}.section-description{color:var(--muted);max-width:58ch;font-size:1.02rem}.section-heading--center .section-description{margin-inline:auto}.button{border-radius:var(--radius-pill);letter-spacing:.04em;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;min-height:51px;padding:13px 26px;font-size:.78rem;font-weight:700;transition:transform .2s,box-shadow .2s,background-color .25s,border-color .25s,color .25s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button:active{transform:translateY(0)}.button--primary{background:var(--olive-900);color:var(--white)}.button--primary:hover{background:var(--olive-800);box-shadow:0 10px 24px #424d1a33}.button--secondary{border-color:var(--olive-900);color:var(--olive-900);background:0 0}.button--secondary:hover{box-shadow:none;background:#424d1a0f}.button--light{background:var(--cream);color:var(--olive-900)}.button--light:hover{background:#fff;box-shadow:0 10px 24px #81515e2e}.button--sm{min-height:44px;padding:10px 20px;font-size:.72rem}.button-row{flex-wrap:wrap;gap:13px;margin-top:32px;display:flex}.floral-decoration{fill:none;stroke:currentColor;stroke-width:1.5px;width:130px;color:var(--olive-600);opacity:.4}.decorative-asset{z-index:1;object-fit:contain;pointer-events:none;width:clamp(80px,10vw,160px);height:auto;animation:6s ease-in-out infinite gentle-float;position:absolute}@keyframes gentle-float{0%,to{translate:0 -5px}50%{translate:0 7px}}.asset-hero-flower{opacity:.5;top:16%;left:1.5%}.asset-hero-botanical{opacity:.48;width:clamp(440px,48vw,700px);animation-delay:-1.8s;bottom:-5%;left:-1%}.asset-hero-butterfly{width:clamp(60px,7vw,105px);bottom:9%;right:3%}.asset-about{opacity:.5;top:12%;right:2%}.asset-services{opacity:.45;top:8%;left:2%}.asset-gallery{opacity:.2;width:clamp(150px,25vw,360px);top:5%;right:1%}.asset-contact{opacity:.5;width:clamp(120px,16vw,230px);bottom:5%;left:1%}.reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.22,1,.36,1);transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}.site-header{z-index:50;height:84px;transition:background .3s,box-shadow .3s;position:fixed;inset:0 0 auto}.site-header.is-scrolled{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fff8efe6;box-shadow:0 6px 30px #424d1a12}.header-inner{align-items:center;gap:30px;height:84px;display:flex}.brand{align-items:center;width:150px;height:60px;display:flex}.brand img{object-fit:contain;object-position:left center;width:100%;height:55px}.desktop-nav{gap:clamp(18px,2.2vw,34px);margin-left:auto;display:flex}.desktop-nav a{color:var(--olive-900);font-size:.76rem;font-weight:600;position:relative}.desktop-nav a:after{content:"";background:var(--blush-500);height:1px;transition:right .25s;position:absolute;bottom:-7px;left:0;right:100%}.desktop-nav a:hover:after{right:0}.header-cta{margin-left:0}.menu-button{color:var(--olive-900);background:0 0;border:0;margin-left:auto;padding:8px;display:none}.mobile-menu{display:none}.hero{background:radial-gradient(circle at 82% 28%,#ffd9e1a6,transparent 28%),var(--cream);align-items:center;min-height:820px;padding:150px 0 100px;display:flex;position:relative;overflow:hidden}.hero-grid{grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(45px,7vw,105px);display:grid}.hero-copy{z-index:2;position:relative}.hero h1{color:var(--olive-900);max-width:7ch;margin-bottom:30px;font-size:clamp(4.3rem,7.4vw,7.4rem);line-height:.9}.hero-subtitle{color:var(--blush-700);font-family:var(--font-display);max-width:29ch;font-size:clamp(1.35rem,2vw,1.85rem);line-height:1.35}.hero-description{color:var(--muted);max-width:52ch;font-size:.96rem}.hero-collage{height:600px;position:relative}.hero-image{box-shadow:var(--shadow-soft);animation:7s ease-in-out infinite hero-image-float;position:absolute;overflow:hidden}.hero-image--secondary{animation-duration:6.4s;animation-delay:-2.2s}.hero-image--small{animation-duration:7.8s;animation-delay:-4.1s}@keyframes hero-image-float{0%,to{translate:0 -4px}50%{translate:0 7px}}.hero-image img{transition:transform .8s}.hero-image:hover img{transform:scale(1.035)}.hero-image--main{border:8px solid var(--cream);border-radius:48% 48% 28px 28px;inset:10px 8% 60px 15%;transform:rotate(1.2deg);box-shadow:0 28px 70px #424d1a33}.hero-image-slide{opacity:0;animation:15s ease-in-out infinite hero-crossfade;position:absolute;inset:0}.hero-image-slide:first-child{animation-delay:0s}.hero-image-slide:nth-child(2){animation-delay:5s}.hero-image-slide:nth-child(3){animation-delay:10s}@keyframes hero-crossfade{0%{opacity:0}6%,29%{opacity:1}35%,to{opacity:0}}.hero-image--secondary{border:8px solid var(--cream);z-index:2;border-radius:100px 100px 24px 24px;width:35%;height:43%;bottom:5%;left:-3%;transform:rotate(-4deg)}.hero-image--small{border:7px solid var(--cream);z-index:2;border-radius:24px 80px;width:27%;height:31%;top:8%;right:0;transform:rotate(4deg)}.hero-note{z-index:3;color:var(--blush-700);font-family:var(--font-display);font-size:1.2rem;position:absolute;bottom:9%;right:2%;transform:rotate(-5deg)}.hero-botanical{opacity:.2;position:absolute;bottom:-10px;left:2%;transform:rotate(-15deg)scale(1.5)}.about{background:var(--surface-soft)}.about-grid{grid-template-columns:.8fr 1.15fr;grid-template-areas:"visual heading""visual content";align-items:start;column-gap:clamp(50px,8vw,115px);display:grid}.about-heading{grid-area:heading}.about-heading .section-heading{margin-bottom:30px}.about-visual{height:610px;position:sticky;top:120px}.about-image{border:7px solid var(--surface-soft);box-shadow:var(--shadow-soft);border-radius:180px 180px 30px 30px;position:absolute;overflow:hidden}.about-image img{transition:transform .8s}.about-image:hover img{transform:scale(1.035)}.about-image--main{z-index:1;inset:0 9% 28px}.about-image--main img{object-position:center top}.about-image--left{z-index:2;will-change:transform;border-radius:24px;width:40%;height:42%;animation:5.4s ease-in-out infinite about-image-float-left;bottom:4%;left:-7%;transform:rotate(-4deg)}.about-image--left img{object-position:center top}.about-image--right{z-index:2;will-change:transform;border-radius:22px;width:36%;height:38%;animation:6s ease-in-out -2.7s infinite about-image-float-right;bottom:13%;right:-8%;transform:rotate(4deg)}.about-image--right img{object-position:center top}@keyframes about-image-float-left{0%,to{transform:translateY(-5px)rotate(-4deg)}50%{transform:translate(5px,14px)rotate(-2.5deg)}}@keyframes about-image-float-right{0%,to{transform:translateY(6px)rotate(4deg)}50%{transform:translate(-5px,-13px)rotate(2.5deg)}}.about-seal{background:var(--blush-100);border-radius:50%;place-items:center;width:145px;height:145px;display:grid;position:absolute;top:-30px;right:-25px;transform:rotate(7deg);box-shadow:0 10px 35px #81515e26}.about-visual{grid-area:visual}.about-content{grid-area:content}.about-intro{color:var(--olive-800);max-width:60ch;font-size:1.18rem;font-weight:600;line-height:1.65}.about-narrative{max-width:64ch;margin-top:8px}.about-chapter{margin-bottom:30px}.about-chapter-marker{color:var(--blush-700);letter-spacing:.2em;text-transform:uppercase;align-items:center;gap:12px;margin:0 0 12px;font-size:.62rem;font-weight:700;display:flex}.about-chapter-index{border:1px solid var(--blush-300);width:30px;height:30px;color:var(--blush-700);font-family:var(--font-display);letter-spacing:0;border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;display:inline-flex}.about-chapter-marker:after{content:"";background:var(--border);flex:1;height:1px}.about-chapter p{color:var(--muted);font-size:.97rem;line-height:1.9}.about-chapter p+p{margin-top:13px}.about-pullquote{color:var(--blush-700);border-left:2px solid var(--blush-300);margin:42px 0;padding-left:22px;font-size:clamp(1.7rem,2.6vw,2.5rem);font-weight:500;line-height:1.25}.about-highlight{background:var(--blush-100);border-radius:var(--radius-card);color:var(--blush-700);margin:34px 0 20px;padding:26px 30px;font-size:clamp(1.3rem,2vw,1.65rem);line-height:1.45}.signature{color:var(--olive-800);letter-spacing:.08em;font-size:.78rem;font-weight:700}.about-botanical{opacity:.2;position:absolute;bottom:3%;right:2%;transform:rotate(22deg)}.services{background:var(--cream)}.services-grid{grid-template-columns:repeat(6,1fr);gap:20px;display:grid}.service-card{border-radius:var(--radius-card);background:#ffffffb8;border:1px solid #d8d2c7b3;grid-column:span 2;min-height:220px;padding:32px 26px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden}.service-card:nth-child(4){grid-column:1/span 3}.service-card:nth-child(5){grid-column:4/span 3}.service-card:hover{box-shadow:var(--shadow-card);transform:translateY(-5px)}.service-card-heading{align-items:center;gap:14px;margin-bottom:18px;display:flex}.service-card-heading svg{width:28px;height:28px;color:var(--blush-500);stroke-width:1.5px;flex:none}.service-card h3{color:var(--olive-900);font-family:var(--font-display);margin:0;font-size:1.55rem;line-height:1.15}.service-card p{color:var(--muted);max-width:44ch;margin-bottom:0;font-size:.84rem;line-height:1.65}.centered-cta{text-align:center;margin-top:48px}.gallery{background:var(--olive-900);color:var(--white)}.gallery h2,.gallery .eyebrow{color:var(--cream)}.gallery .eyebrow{opacity:.7}.gallery .section-description{color:#ffffffad}.gallery-filters{flex-wrap:wrap;gap:10px;margin-bottom:38px;display:flex}.gallery-filters button{color:#ffffffbf;cursor:pointer;background:0 0;border:1px solid #ffffff47;border-radius:999px;padding:9px 17px;font-size:.72rem;transition:all .25s}.gallery-filters button:hover,.gallery-filters button.is-active{background:var(--cream);color:var(--olive-900);border-color:var(--cream)}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:265px;grid-auto-flow:dense;gap:18px;width:100%;display:grid}.gallery-item{background:var(--olive-800);border-radius:24px;position:relative;overflow:hidden}.gallery-item--tall{grid-row:span 2}.gallery-item--wide{grid-column:span 2}.gallery-item img{transition:transform .7s}.gallery-item:hover img{transform:scale(1.04)}.gallery-overlay{opacity:0;background:linear-gradient(#0000,#1e1b15bf);padding:55px 25px 20px;transition:opacity .3s;position:absolute;inset:auto 0 0}.gallery-item:hover .gallery-overlay,.gallery-item:focus-within .gallery-overlay{opacity:1}.gallery-overlay span{letter-spacing:.12em;font-size:.65rem}.gallery-overlay h3{font-family:var(--font-display);margin:3px 0 0;font-size:1.5rem}.empty-state{text-align:center;color:#ffffffb3;padding:80px 20px}.mobile-gallery{display:none}.gallery-preview-header{justify-content:space-between;align-items:flex-start;gap:32px;margin-bottom:46px;display:flex}.gallery-preview-header .section-heading{margin-bottom:0}.gallery-preview-cta{flex:none;gap:10px;margin-top:34px}.gallery-preview-groups{gap:58px;display:grid}.gallery-preview-group{z-index:2;position:relative}.gallery-preview-title-row{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px;display:flex}.gallery-preview-title-row h3{color:var(--cream);font-family:var(--font-display);margin:0;font-size:clamp(2rem,3vw,3.25rem);line-height:1.05}.gallery-preview-count{color:#ffffff85;letter-spacing:.16em;text-transform:uppercase;margin:0 0 7px;font-size:.66rem;font-weight:700}.gallery-preview-title-row>a{color:#ffffffb8;align-items:center;gap:7px;font-size:.76rem;font-weight:700;transition:color .2s,transform .2s;display:inline-flex}.gallery-preview-title-row>a:hover{color:var(--cream);transform:translate(2px)}.gallery-preview-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:16px;display:grid}.gallery-preview-card{aspect-ratio:4/5;background:var(--olive-800);border-radius:22px;position:relative;overflow:hidden;box-shadow:0 18px 45px #1e1b1521}.gallery-preview-card img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .55s;display:block}.gallery-preview-card:hover img{transform:scale(1.025)}.gallery-preview-card-caption{color:var(--cream);opacity:0;background:linear-gradient(#0000,#1e1b15c2);padding:44px 18px 16px;transition:opacity .25s;position:absolute;inset:auto 0 0}.gallery-preview-card:hover .gallery-preview-card-caption{opacity:1}.gallery-preview-card-caption span{font-size:.74rem;font-weight:700}.gallery-preview-empty{color:#ffffffb3;text-align:center;border:1px solid #ffffff29;border-radius:22px;margin:0;padding:38px 18px}.catalog-page{background:var(--cream)}.catalog-hero{background:var(--surface-soft);isolation:isolate;place-items:center;min-height:760px;padding:156px 0 112px;display:grid;position:relative;overflow:hidden}.catalog-hero:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 42%,#fff8eff0,#fff8efb8 34%,#fff8ef38 62%,#fff8ef1a);position:absolute;inset:0}.catalog-hero:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#faf3e833,#faf3e8b8);position:absolute;inset:0}.catalog-hero-background{z-index:0;pointer-events:none;position:absolute;inset:0}.catalog-hero-copy{z-index:2;position:relative}.catalog-hero-copy--center{text-align:center;max-width:820px;margin:0 auto}.catalog-hero-copy h1{max-width:10ch;color:var(--olive-900);text-shadow:0 2px #fff8efb3,0 18px 42px #424d1a24;margin:0 auto 28px;font-size:clamp(4rem,7vw,7rem);line-height:.92}.catalog-hero-copy>p:not(.eyebrow){max-width:68ch;color:var(--text);text-shadow:0 1px #fff8efbf;margin-inline:auto;font-size:1rem;line-height:1.85}.catalog-hero-copy .eyebrow{color:var(--blush-700);text-shadow:0 1px #fff8efcc}.catalog-hero-links{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:34px;display:flex}.catalog-hero-links a{border-radius:var(--radius-pill);color:var(--olive-800);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffbd;border:1px solid #424d1a2e;padding:9px 15px;font-size:.72rem;font-weight:700;transition:background-color .2s,border-color .2s,transform .2s;box-shadow:0 10px 26px #424d1a14}.catalog-hero-links a:hover{background:var(--white);border-color:var(--olive-300);transform:translateY(-1px)}.catalog-hero-photo{border:8px solid #fff8efe6;position:absolute;overflow:hidden;box-shadow:0 28px 80px #1e1b1533}.catalog-hero-photo--1{border-radius:170px 170px 28px 28px;width:min(34vw,430px);top:128px;left:max(-70px,-4vw);transform:rotate(-7deg)}.catalog-hero-photo--2{border-radius:30px 170px;width:min(35vw,450px);top:116px;right:max(-80px,-5vw);transform:rotate(6deg)}.catalog-hero-photo--3{border-radius:150px 150px 26px 26px;width:min(31vw,390px);bottom:-92px;left:50%;transform:translate(-50%)rotate(2deg)}.catalog-hero-photo img{width:100%;height:auto;display:block}.catalog-sections{padding:92px 0 130px}.catalog-category{border-top:1px solid var(--border);padding:70px 0;scroll-margin-top:110px}.catalog-category:first-child{border-top:0;padding-top:0}.catalog-category-header{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:30px;display:flex}.catalog-category-header h2{max-width:10ch;margin-bottom:0}.catalog-top-link{color:var(--olive-800);align-items:center;gap:7px;font-size:.74rem;font-weight:700;display:inline-flex}.catalog-masonry{columns:3 280px;column-gap:20px}.catalog-card{background:var(--white);width:100%;box-shadow:var(--shadow-card);break-inside:avoid;border-radius:22px;margin:0 0 20px;display:inline-block;overflow:hidden}.catalog-card img{width:100%;height:auto;display:block}.catalog-card-caption{color:var(--olive-900);padding:14px 16px 16px;font-size:.78rem;font-weight:700;line-height:1.4}.catalog-empty{border:1px solid var(--border);color:var(--muted);text-align:center;border-radius:22px;margin:0;padding:48px 20px}.contact{background:var(--surface-muted)}.contact-grid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:clamp(50px,8vw,110px);display:grid}.direct-contact{border-top:1px solid var(--border);margin-top:55px;padding-top:32px}.direct-contact h3{color:var(--olive-900);font-family:var(--font-display);font-size:1.7rem}.direct-contact-copy{color:var(--muted);max-width:46ch;font-size:.9rem;line-height:1.75}.direct-links{flex-wrap:wrap;gap:13px;margin-top:18px;display:flex}.direct-channel{border:1px dashed var(--border);border-radius:var(--radius-pill);color:var(--muted);align-items:center;gap:10px;padding:11px 18px;font-size:.82rem;font-weight:700;display:inline-flex}.direct-channel svg{width:19px;color:var(--blush-500)}.direct-channel small{background:var(--blush-100);color:var(--blush-700);letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius-pill);padding:3px 9px;font-size:.58rem;font-weight:700}.direct-channel--whatsapp{border:1px solid var(--olive-600);color:var(--olive-900);background:#ffffff8c;text-decoration:none;transition:background-color .2s,color .2s,box-shadow .2s}.direct-channel--whatsapp:hover{background:var(--olive-900);color:var(--cream);box-shadow:0 8px 20px #424d1a29}.direct-channel--whatsapp:hover svg{color:var(--cream)}.direct-channel--whatsapp small{background:var(--olive-100);color:var(--olive-800);text-transform:none;letter-spacing:.04em}.direct-channel--whatsapp:hover small{color:var(--cream);background:#ffffff2e}.direct-note{color:var(--muted);letter-spacing:.04em;margin-top:18px;font-size:.74rem;font-weight:600;display:block}.contact-form{background:var(--white);box-shadow:var(--shadow-card);border-radius:28px;padding:clamp(28px,4vw,52px)}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field{margin-bottom:21px}.field label{color:var(--olive-900);margin-bottom:7px;font-size:.72rem;font-weight:700;display:block}.field input,.field select,.field textarea{border:1px solid var(--border);border-radius:var(--radius-field);background:var(--cream);width:100%;color:var(--text);outline:none;padding:12px 14px;transition:border .2s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--olive-600);box-shadow:0 0 0 3px #7d895026}.field [aria-invalid=true]{border-color:var(--blush-700)}.field-error{color:#8e344c;margin-top:5px;font-size:.7rem;display:block}.form-submit{border:0;gap:12px;width:100%}.form-submit:disabled{opacity:.65;cursor:wait;transform:none}.form-botcheck{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;left:-9999px}.form-success,.form-submit-error{border-radius:12px;margin:15px 0 0;padding:12px;font-size:.78rem}.form-success{color:var(--olive-800);background:var(--olive-100)}.form-submit-error{color:#8e344c;background:var(--blush-100)}.closing{background:var(--blush-500);min-height:440px;color:var(--cream);text-align:center;place-items:center;padding:75px 25px;display:grid;position:relative;overflow:hidden}.closing .reveal{z-index:2;max-width:900px;position:relative}.closing .closing-text{font-family:var(--font-display);max-width:24ch;margin:0 auto 38px;font-size:clamp(1.9rem,5vw,4.4rem);line-height:1.08}.closing-decoration{z-index:1;opacity:1;filter:drop-shadow(0 0 1.5px #fff8efb8);position:absolute}.closing-decoration--left{width:clamp(400px,42vw,620px);bottom:-17%;left:-3%;transform:rotate(-10deg)}.closing-decoration--right{width:clamp(145px,16vw,230px);top:-1%;right:2%;transform:rotate(220deg)}.site-footer{color:#ffffffad;background:#303914;padding:78px 0 25px}.footer-grid{grid-template-columns:1.5fr .5fr;gap:80px;padding-bottom:55px;display:grid}.footer-brand img{filter:brightness(0)invert();object-fit:contain;object-position:left;opacity:.9;width:180px;height:80px}.footer-brand>p{max-width:50ch;font-size:.82rem}.footer-brand .footer-tagline{color:var(--cream);font-family:var(--font-display);margin:10px 0;font-size:1.55rem}.footer-title{color:var(--cream);letter-spacing:.13em;font-size:.72rem;font-weight:700}.site-footer nav{flex-direction:column;align-items:flex-start;gap:7px;display:flex}.site-footer nav a{font-size:.78rem}.site-footer nav a:hover{color:var(--cream)}.footer-bottom{border-top:1px solid #ffffff21;justify-content:space-between;gap:20px;padding-top:23px;font-size:.68rem;display:flex}.footer-bottom p{margin:0}.back-to-top{color:#ffffffad;align-items:center;gap:8px;display:inline-flex}.back-to-top:hover{color:var(--cream)}@media (max-width:980px){.desktop-nav,.header-cta{display:none}.menu-button{display:inline-flex}.mobile-menu{background:#fff8eff7;max-height:0;transition:max-height .4s;display:block;overflow:hidden}.mobile-menu.is-open{max-height:520px;box-shadow:0 20px 30px #424d1a14}.mobile-menu nav{flex-direction:column;width:min(100% - 40px,1240px);margin:auto;padding:18px 0 30px;display:flex}.mobile-menu nav>a:not(.button){border-bottom:1px solid var(--border);color:var(--olive-900);font-family:var(--font-display);padding:14px 3px;font-size:1.3rem}.mobile-menu nav>a span{color:var(--blush-500);font-family:var(--font-body);margin-right:15px;font-size:.6rem}.mobile-menu .button{margin-top:20px}.hero-grid{grid-template-columns:1fr 1fr;gap:30px}.hero h1{font-size:clamp(3.7rem,8vw,5.5rem)}.about-grid{grid-template-columns:.75fr 1.25fr;column-gap:50px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:290px}.gallery-item--wide{grid-column:span 2}.contact-grid{grid-template-columns:1fr 1.2fr;gap:40px}.gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-hero-photo--1{width:min(38vw,390px);left:-110px}.catalog-hero-photo--2{width:min(40vw,410px);right:-120px}.catalog-hero-photo--3{width:min(36vw,360px)}}@media (max-width:720px){.container{width:min(100% - 32px,1240px)}.section{padding:85px 0}.section-heading{margin-bottom:38px}.site-header,.header-inner{height:72px}.brand{width:125px;height:54px}.hero{isolation:isolate;min-height:760px;padding:120px 0 85px}.hero:before{content:"";z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 43%,#fff8eff5 0,#fff8efe0 30%,#fff8ef7a 58%,#fff8ef38 100%);position:absolute;inset:0}.hero:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(#faf3e880,#faf3e824 45%,#faf3e8c7);position:absolute;inset:0}.hero-grid{display:block}.hero-copy{z-index:3;text-align:center;max-width:560px;margin:0 auto;padding-top:30px}.hero h1{text-shadow:0 2px #fff8efe6,0 14px 36px #424d1a2e;max-width:8ch;margin-inline:auto;font-size:clamp(3.7rem,17vw,5.5rem)}.hero-subtitle,.hero-description{text-shadow:0 1px #fff8efe6;margin-inline:auto}.hero-description{color:var(--text)}.hero .button-row{justify-content:center}.hero-collage{z-index:0;height:auto;margin:0;position:absolute;inset:0;overflow:hidden}.hero-image{border-color:#fff8efdb}.hero-image--main{opacity:.88;border-radius:48% 48% 26px 26px;inset:76px -8% 36px 5%}.hero-image--secondary{width:48%;height:38%;bottom:4%;left:-11%}.hero-image--small{width:42%;height:31%;top:9%;right:-8%}.hero-note{display:none}.asset-hero-botanical{opacity:.22;width:clamp(310px,74vw,470px);bottom:-11%;left:-22%}.about-grid{grid-template-columns:1fr;grid-template-areas:"heading""visual""content"}.about-heading .section-heading{margin-bottom:34px}.about-visual{margin-inline:auto;width:min(94%,100% - 12px);height:min(125vw,570px);margin-bottom:48px;position:relative;top:auto}.about-image--main{inset:0 10% 28px}.about-image--left{width:39%;height:39%;bottom:3%;left:-3%}.about-image--right{width:35%;height:35%;top:auto;bottom:0;right:-3%}.about-seal{z-index:3;width:115px;height:115px;bottom:-22px;right:-8px}.services-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto;min-height:auto}.gallery-filters,.gallery-grid,.gallery>.container>.empty-state{display:none}.gallery-preview-header{margin-bottom:36px;display:block}.gallery-preview-cta{width:100%;margin-top:6px}.gallery-preview-groups{gap:46px}.gallery-preview-title-row{align-items:flex-start;margin-bottom:15px}.gallery-preview-title-row h3{font-size:clamp(1.8rem,9vw,2.7rem)}.gallery-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-preview-card{aspect-ratio:auto;border-radius:16px;flex-direction:column;display:flex}.gallery-preview-card img{aspect-ratio:4/5;height:auto}.gallery-preview-card-caption{opacity:1;background:#ffffff0d;padding:10px 11px 12px;position:static}.gallery-preview-card-caption span{color:#ffffffc7;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;display:block;overflow:hidden}.catalog-hero{min-height:690px;padding:116px 0 82px}.catalog-hero-copy--center{max-width:560px}.catalog-hero-copy h1{max-width:8.5ch;font-size:clamp(3.35rem,16vw,5.3rem)}.catalog-hero-copy>p:not(.eyebrow){font-size:.94rem;line-height:1.75}.catalog-hero-photo{border-width:4px}.catalog-hero-photo--1{width:250px;top:104px;left:-96px}.catalog-hero-photo--2{width:260px;top:120px;right:-104px}.catalog-hero-photo--3{width:250px;bottom:-76px}.catalog-sections{padding:62px 0 90px}.catalog-category{padding:58px 0}.catalog-category-header{margin-bottom:24px;display:block}.catalog-category-header h2{max-width:11ch;font-size:clamp(2.25rem,11vw,3.4rem)}.catalog-top-link{margin-top:10px}.catalog-masonry{columns:1;column-gap:0}.catalog-card{border-radius:18px;margin-bottom:18px}.mobile-gallery{display:block}.mobile-category-buttons{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:18px;display:grid}.mobile-category-buttons button{aspect-ratio:1;color:#ffffffad;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff47;border-radius:16px;place-items:center;width:100%;max-height:54px;transition:background .25s,color .25s,border-color .25s,transform .25s;display:grid}.mobile-category-buttons button svg{stroke-width:1.6px;width:21px;height:21px}.mobile-category-buttons button.is-active{border-color:var(--cream);background:var(--cream);color:var(--olive-900);transform:translateY(-2px)}.mobile-gallery-stage{position:relative}.mobile-gallery-item{aspect-ratio:4/5;background:var(--olive-800);border-radius:26px;width:100%;min-height:0;animation:.55s both mobile-gallery-fade;position:relative;overflow:hidden}.mobile-gallery-item:after{content:"";background:linear-gradient(#0000,#1e1b15e0);position:absolute;inset:35% 0 0}@keyframes mobile-gallery-fade{0%{opacity:0}to{opacity:1}}.mobile-gallery-caption{z-index:2;text-align:center;color:var(--cream);position:absolute;bottom:22px;left:58px;right:58px}.mobile-gallery-tag{letter-spacing:.2em;text-transform:uppercase;opacity:.65;font-size:.58rem;font-weight:700;display:block}.mobile-gallery-caption h3{font-family:var(--font-primary);margin:6px 0 0;font-size:clamp(1.8rem,8vw,2.7rem);line-height:1.05}.mobile-gallery-arrow{z-index:3;width:42px;height:42px;color:var(--olive-900);cursor:pointer;background:#fff8efeb;border:1px solid #fff6;border-radius:50%;position:absolute;top:50%;translate:0 -50%;box-shadow:0 6px 18px #1e1b1524}.mobile-gallery-arrow--previous{left:12px}.mobile-gallery-arrow--next{right:12px}.mobile-gallery-meta{color:#ffffffb3;justify-content:space-between;align-items:center;margin-top:17px;font-size:.68rem;display:flex}.mobile-gallery-category-name{text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:70%;overflow:hidden}.mobile-gallery-empty{color:#ffffffb8;text-align:center;border:1px solid #ffffff29;border-radius:24px;margin:0;padding:56px 18px}.contact-grid{grid-template-columns:1fr}.field-row{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr;gap:38px}.footer-bottom{flex-direction:column}.closing-decoration--left{width:min(92vw,450px);bottom:-7%;left:-17%}.closing-decoration--right{width:150px;bottom:2%;right:-2%}}@media (max-width:430px){.decorative-asset{max-width:calc(100vw - 32px)}.asset-gallery{right:-18%}.asset-about,.asset-services,.asset-contact{opacity:.35}.hero-note{right:8%}.mobile-gallery-caption{left:54px;right:54px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}.hero-image-slide{opacity:0;animation:none!important}.hero-image-slide:first-child{opacity:1}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}
