:root{font-family:Avenir Next,Segoe UI,Arial,sans-serif;color:#272220;background:#fffbf7;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%}::selection{background:#f5b8ae;color:#272220}:focus-visible{outline:3px solid #b83e35;outline-offset:3px}.site-shell{overflow:clip}.section-wrap{width:min(100% - 2.5rem,1240px);margin-inline:auto}.site-section{padding-block:clamp(4.75rem,8vw,8.5rem)}.eyebrow{display:block;color:#ae493c;font-size:.74rem;font-weight:800;letter-spacing:.15em;line-height:1.5;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}p{line-height:1.65}.skip-link{position:absolute;left:1rem;top:-5rem;z-index:100;padding:.75rem 1rem;background:#fff;color:#272220;border:2px solid #c64f43;border-radius:.5rem}.skip-link:focus{top:1rem}.site-header{position:sticky;top:0;z-index:50;background:#fffbf7f5;border-bottom:1px solid #eadfd9;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header-inner{display:flex;align-items:center;min-height:82px;gap:2rem}.brand-wordmark{flex-shrink:0;font-size:1.46rem;font-weight:900;letter-spacing:-.07em;line-height:1;white-space:nowrap}.brand-wordmark span{color:#c64f43}.desktop-nav{display:flex;align-items:center;justify-content:center;gap:clamp(.7rem,1.8vw,1.55rem);margin-left:auto}.desktop-nav a{font-size:.87rem;font-weight:650;padding-block:.6rem;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}.desktop-nav a:hover,.desktop-nav a[aria-current=page]{color:#a43c33;border-color:#c64f43}.header-cta{margin-left:.25rem;white-space:nowrap;font-size:.82rem!important;padding:.85rem 1rem!important}.menu-toggle{display:none;margin-left:auto;border:1px solid #e8d6ce;border-radius:.55rem;background:#fff;width:44px;height:44px;align-items:center;justify-content:center}.mobile-nav[hidden]{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;border:1px solid transparent;border-radius:.52rem;min-height:48px;padding:.82rem 1.3rem;font-size:.92rem;font-weight:800;line-height:1.15;text-align:center;transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}.button-primary{background:#c64f43;color:#fff;box-shadow:0 7px 20px #9e372c26}.button-primary:hover{background:#a93e35;box-shadow:0 10px 22px #9e372c38}.button-outline{background:#fffdfb;border-color:#b8a49a;color:#382c28}.button-outline:hover{border-color:#aa493e;color:#aa493e}.button-light{background:#fffaf5;color:#87352d}.button-light:hover{background:#fff}.button-ghost{border-color:#fff9;color:#fff}.button-ghost:hover{background:#ffffff1f}.text-link{display:inline-flex;gap:.5rem;align-items:center;color:#a43c33;font-weight:800;border-bottom:1px solid currentColor;padding-bottom:.2rem}.text-link:hover{color:#812b24}.hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:clamp(2rem,5vw,5.5rem);align-items:center;padding-block:clamp(3.6rem,6vw,6rem)}.hero:before{content:"";position:absolute;top:.5rem;right:-2rem;bottom:.5rem;left:-2rem;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 12% 82%,rgba(255,196,172,.28),transparent 44%),radial-gradient(ellipse at 72% 14%,rgba(205,177,230,.27),transparent 42%),radial-gradient(ellipse at 92% 72%,rgba(255,222,169,.2),transparent 40%);filter:blur(17px);animation:hero-haze 17s ease-in-out infinite alternate}@keyframes hero-haze{0%{transform:translate3d(-1.5%,1%,0) scale(1)}to{transform:translate3d(2%,-1.5%,0) scale(1.055)}}.hero-copy h1{font-size:clamp(3.2rem,6.3vw,6.25rem);line-height:.99;max-width:11ch;margin:1.2rem 0 1.6rem;font-weight:860}.hero-copy h1 em{color:#bf5145;font-weight:inherit;font-style:normal}.hero-copy>p{color:#655b56;font-size:clamp(1.03rem,1.5vw,1.23rem);max-width:48ch;margin-bottom:1.8rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.75rem}.hero-footnote{display:block;margin-top:1.35rem;color:#756963;font-size:.8rem}.hero-visual{position:relative;height:clamp(440px,45vw,655px);overflow:hidden;border-radius:.8rem .8rem 6.5rem;background:#e8d7ca;box-shadow:0 24px 55px #532f291f}.hero-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:68% center;transform:translate3d(0,var(--hero-parallax-y, 0px),0) scale(1.14);will-change:transform;transition:filter .35s ease}.hero-visual:hover img{filter:brightness(1.045)}.hero-visual>span{position:absolute;z-index:2;left:1.4rem;bottom:1.4rem;max-width:270px;padding:.8rem 1rem;color:#fff;background:#272220bf;border-radius:.3rem;font-size:.81rem;line-height:1.35}.hero-stars{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;overflow:hidden;pointer-events:none;border-radius:inherit}.hero-glint{position:absolute;width:13px;height:13px;background:#fff6da;clip-path:polygon(50% 0,59% 40%,100% 50%,59% 60%,50% 100%,41% 60%,0 50%,41% 40%);filter:drop-shadow(0 0 7px #fff0cb);animation:hero-twinkle 4.5s ease-in-out infinite}.hero-glint-one{top:15%;left:17%}.hero-glint-two{top:24%;left:81%;width:10px;height:10px;animation-delay:-1.8s}.hero-glint-three{top:51%;left:11%;width:8px;height:8px;animation-delay:-3.1s}@keyframes hero-twinkle{0%,to{opacity:.22;transform:scale(.75)}45%{opacity:.9;transform:scale(1.15)}}.hero-shooting-star{position:absolute;width:clamp(115px,15vw,205px);height:2px;opacity:0;background:linear-gradient(90deg,transparent,rgba(255,218,178,.55) 57%,#fff8e8);border-radius:99px;filter:drop-shadow(0 0 5px rgba(255,231,196,.85));animation:hero-shoot 8.5s linear infinite}.hero-shooting-star:after{content:"";position:absolute;right:-2px;top:-2px;width:6px;height:6px;border-radius:50%;background:#fffaf1;box-shadow:0 0 10px 3px #ffe3bbb8}.hero-shooting-star-one{top:19%;left:29%;animation-delay:-1.2s}.hero-shooting-star-two{top:40%;left:75%;animation-delay:-4.2s}.hero-shooting-star-three{top:8%;left:65%;animation-delay:-7s}@keyframes hero-shoot{0%,2%{opacity:0;transform:translate3d(150px,-50px,0) rotate(-23deg)}5%,12%{opacity:.92}18%,to{opacity:0;transform:translate3d(-340px,130px,0) rotate(-23deg)}}.trust-strip{display:flex;align-items:center;justify-content:center;gap:clamp(1rem,4vw,4rem);padding:1.35rem 1rem;border-block:1px solid #ecdfd5;background:#fff5ee;color:#6b4c42;font-size:.82rem;font-weight:700;text-align:center}.trust-strip span+span:before{content:"✦";color:#d28775;margin-right:clamp(1rem,4vw,4rem)}.section-heading{margin-bottom:2.1rem}.section-heading h2,.why-layout h2,.final-cta h2{max-width:18ch;font-size:clamp(2.3rem,4.6vw,4.45rem);line-height:1.08;margin:.65rem 0 .8rem;font-weight:820}.section-heading p{max-width:57ch;color:#625751;font-size:1.05rem;margin-bottom:0}.section-heading-row{display:flex;align-items:end;justify-content:space-between;gap:2rem}.section-heading-row .text-link{margin-bottom:2.1rem;white-space:nowrap}.event-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:1rem}.event-card{position:relative;min-width:0;height:clamp(280px,31vw,420px);display:block;overflow:hidden;border-radius:.6rem;background:#e5d6ca}.event-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease}.event-card:hover img{transform:scale(1.045)}.event-card:before,.gallery-tile:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;opacity:0;background:radial-gradient(380px circle at var(--pointer-x, 50%) var(--pointer-y, 50%),rgba(255,255,255,.25),transparent 65%);transition:opacity .3s ease}.event-card:hover:before,.gallery-tile:hover:before{opacity:1}.event-card:after{content:"";position:absolute;top:35%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#1a1311bf)}.event-card>span{position:absolute;z-index:2;inset:auto 1.15rem 1.15rem;display:flex;align-items:center;justify-content:space-between;color:#fff;font-size:clamp(1.25rem,2vw,1.85rem);font-weight:800;letter-spacing:-.04em}.event-card svg,.gallery-tile svg{transition:transform .3s ease}.event-card:hover svg,.gallery-tile:hover svg{transform:translate(4px)}.motion-ready:not(.is-visible){opacity:0;transform:translateY(26px)}.motion-ready.is-visible{opacity:1;transform:translateY(0)}.motion-ready{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.75,.2,1)}.event-card:nth-child(2),.story-photo:nth-child(2),.package:nth-child(2){transition-delay:.08s}.event-card:nth-child(3),.story-photo:nth-child(3),.package:nth-child(3){transition-delay:.16s}.story-grid{display:grid;grid-template-columns:1fr 1.1fr 1fr;gap:1rem}.story-photo{position:relative;margin:0;height:clamp(290px,36vw,475px);overflow:hidden;border-radius:.65rem;background:#e6d8d0}.story-photo:nth-child(2){transform-origin:center bottom}.story-photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .55s ease}.story-photo:hover img{transform:scale(1.055)}.story-photo:after{content:"";position:absolute;top:62%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#1511109e);pointer-events:none}.story-photo figcaption{position:absolute;z-index:1;left:1.2rem;bottom:1.1rem;color:#fff;font-size:1.18rem;font-weight:790;letter-spacing:-.03em}.calendar-feature{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:clamp(2rem,7vw,7rem);align-items:center}.calendar-feature-copy h2{max-width:12ch;font-size:clamp(2.5rem,4.7vw,4.8rem);line-height:1.07;margin:.65rem 0 1rem}.calendar-feature-copy>p{max-width:50ch;color:#625751;font-size:1.05rem}.calendar-feature-image{max-width:470px;height:clamp(190px,24vw,300px);margin-top:1.6rem;overflow:hidden;border-radius:.65rem .65rem 3.5rem}.calendar-feature-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.calendar-feature-image:hover img{transform:scale(1.05)}.calendar-feature-picker{min-width:0}.calendar-feature-picker>.button{width:100%;margin-top:.75rem}.calendar-shell{padding:clamp(1rem,2.7vw,1.7rem);border:1px solid #e3cfc4;border-radius:.75rem;background:#fff;box-shadow:0 22px 50px #59312517}.calendar-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}.calendar-kicker{display:block;margin-bottom:.25rem;color:#a7453a;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.calendar-header strong{display:block;font-size:clamp(1.3rem,2vw,1.7rem);letter-spacing:-.04em}.calendar-nav{display:flex;gap:.4rem}.calendar-nav button{width:38px;height:38px;display:grid;place-items:center;border:1px solid #dfccc2;border-radius:50%;background:#fff9f5;color:#673c32}.calendar-nav button:not(:disabled):hover{background:#b94e42;border-color:#b94e42;color:#fff}.calendar-nav button:disabled{opacity:.35;cursor:default}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(2px,.5vw,6px)}.calendar-weekday{display:grid;place-items:center;min-height:32px;color:#84736a;font-size:.72rem;font-weight:800}.calendar-day{display:grid;place-items:center;min-width:0;min-height:38px;aspect-ratio:1;padding:0;border:1px solid transparent;border-radius:.43rem;background:#faf5f1;color:#372a25;font-size:.91rem;font-weight:720;transition:background .2s,color .2s,transform .2s}.calendar-day:not(:disabled):hover{transform:translateY(-2px);background:#f8d9cf;color:#87352d}.calendar-day.is-today{border-color:#c75e4d}.calendar-day.is-selected,.calendar-day.is-selected:not(:disabled):hover{background:#b94e42;color:#fff;border-color:#b94e42}.calendar-day:disabled{background:#f6f2ef;color:#b6aaa4;cursor:default}.calendar-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.1rem;padding-top:1rem;border-top:1px solid #eadbd4}.calendar-footer label{color:#5c504a;font-size:.78rem;font-weight:700}.calendar-footer input{min-width:145px;max-width:175px;padding:.55rem .65rem;border:1px solid #baa69c;border-radius:.4rem;background:#fff;color:#332823;font-size:.8rem}.calendar-help{min-height:2.6em;margin:.7rem 0 0;color:#6b5a52;font-size:.82rem}.why-section{background:#f5e9e6}.why-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:clamp(3rem,8vw,8rem)}.why-layout>div:first-child>p{max-width:48ch;color:#625751;margin-bottom:1.6rem}.why-points{border-top:1px solid #d8c6bf}.why-points>div{display:grid;grid-template-columns:3rem 1fr;column-gap:.8rem;padding:1.25rem 0;border-bottom:1px solid #d8c6bf}.why-points strong{color:#b75749;font-size:.9rem}.why-points h3{font-size:1.35rem;margin-bottom:.25rem}.why-points p{grid-column:2;color:#6c5e58;font-size:.89rem;margin:0}.faq-preview{padding-top:1rem}.faq-preview .text-link{margin-top:1.5rem}.final-cta{background:#b94e42;color:#fff;padding-block:clamp(4.5rem,8vw,7.5rem)}.final-cta .eyebrow{color:#ffe1d5}.final-cta h2{margin-bottom:1rem}.final-cta p{font-size:1.08rem;max-width:44ch;color:#fff1e9;margin-bottom:1.5rem}.gallery-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin:2rem 0 1.4rem}.gallery-filters button{border:1px solid #dbc8bf;border-radius:99px;padding:.65rem 1rem;color:#5b4e47;background:#fff;font-size:.85rem;font-weight:750}.gallery-filters button:hover,.gallery-filters button[aria-pressed=true]{background:#b94e42;border-color:#b94e42;color:#fff}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:.9rem}.gallery-tile{position:relative;display:block;width:100%;padding:0;height:clamp(250px,24vw,350px);border:0;border-radius:.58rem;overflow:hidden;background:#e6d8d0;text-align:left}.gallery-tile.wide{grid-column:span 2}.gallery-tile.portrait{height:clamp(250px,31vw,440px)}.gallery-tile img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .45s ease}.gallery-tile:hover img{transform:scale(1.04)}.gallery-tile:after{content:"";position:absolute;top:55%;right:0;bottom:0;left:0;background:linear-gradient(transparent,#141110a8)}.gallery-tile span{position:absolute;z-index:2;inset:auto 1rem 1rem;display:flex;justify-content:space-between;color:#fff;font-size:.96rem;font-weight:750}.gallery-preview{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-preview .gallery-tile{grid-column:auto;height:clamp(250px,27vw,360px)}.gallery-preview .gallery-tile:first-child,.gallery-preview .gallery-tile:nth-child(4),.gallery-preview .gallery-tile:last-child:nth-child(3){grid-column:span 2}.gallery-disclosure{margin:1.2rem 0 0;max-width:70ch;color:#665a53;font-size:.86rem}.gallery-dialog{width:min(94vw,1000px);max-height:94vh;padding:0;background:#231e1c;color:#fff;border:none;border-radius:.65rem;overflow:visible}.gallery-dialog::backdrop{background:#110f0ede}.gallery-dialog-inner{position:relative}.gallery-dialog img{display:block;max-height:80vh;width:100%;object-fit:contain}.lightbox-close{position:absolute;right:.6rem;top:.6rem;width:44px;height:44px;display:grid;place-items:center;border:none;border-radius:50%;background:#fff;color:#29211e}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:1.2rem;padding:.5rem;font-size:.85rem}.lightbox-controls button{display:grid;place-items:center;width:40px;height:40px;border:0;background:transparent;color:#fff}.package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.package{display:flex;flex-direction:column;gap:1.5rem;padding:2rem;border:1px solid #e6d6ce;border-radius:.65rem;background:#fff}.package.featured{background:#fff1ea;border-color:#cf8070}.package-top{display:flex;align-items:start;justify-content:space-between;flex-wrap:wrap;gap:.4rem}.package h2{font-size:1.5rem;margin-bottom:.4rem}.package-top span{color:#9b4036;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800}.package p{color:#665951;font-size:.9rem;margin-bottom:0}.package-price{padding:1.3rem 0 0;font-size:2.35rem;font-weight:840;letter-spacing:-.06em}.package-price small{font-size:.82rem;letter-spacing:0;font-weight:650;color:#6c5e57}.package ul{margin:0;padding:1.25rem 0 0;border-top:1px solid #e8d9d1;list-style:none;display:grid;gap:.72rem}.package li{display:flex;gap:.6rem;align-items:start;color:#554c47;font-size:.85rem}.package li svg{flex:none;color:#bb5748}.package>button{width:100%;margin-top:auto}.faq-list{border-top:1px solid #dbc9c0}.faq-list details{border-bottom:1px solid #dbc9c0;padding:1.15rem 0}.faq-list summary{cursor:pointer;font-size:1.07rem;font-weight:750;padding-right:1.5rem}.faq-list details[open] summary{color:#9f4035}.faq-list p{max-width:68ch;color:#655a54;margin:.8rem 0 0}.inner-page{padding-block:clamp(3.5rem,7vw,6.5rem) clamp(5rem,8vw,8rem);min-height:60vh}.inner-page>h1,.page-hero h1{max-width:15ch;font-size:clamp(2.9rem,5vw,5.1rem);line-height:1.05;margin:.75rem 0 1rem}.page-lead{max-width:65ch;color:#635852;font-size:1.08rem;margin-bottom:2rem}.page-bottom-link{margin-top:2.5rem}.service-hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:4rem;padding-block:5rem}.service-hero p{max-width:55ch;color:#655952;font-size:1.1rem;margin-bottom:1.6rem}.service-hero img{width:100%;height:clamp(360px,39vw,550px);object-fit:cover;border-radius:.7rem .7rem 5rem}.service-detail{padding-top:1rem}.detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}.detail-grid>div{border-top:1px solid #ccaba0;padding-top:1.2rem}.detail-grid span{display:block;color:#b14a40;font-weight:800;font-size:.8rem;margin-bottom:1rem}.detail-grid p{font-size:1.2rem;font-weight:720;line-height:1.35;max-width:23ch}.narrow-page{max-width:800px}.narrow-page .faq-list{margin-top:2rem}.legal-page p{max-width:70ch;color:#625751}.legal-page a{color:#a83e33;text-decoration:underline}.about-layout{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(2rem,6vw,6rem);margin-top:2.5rem}.about-layout img{width:100%;border-radius:.65rem}.about-layout h2{font-size:clamp(2rem,3vw,3.1rem);line-height:1.1}.about-layout p{color:#625751}.areas{font-weight:730;font-size:.9rem}.included-list{list-style:none;padding:0;display:grid;gap:.75rem;margin:1.5rem 0}.included-list li{display:flex;align-items:center;gap:.6rem;font-weight:680}.included-list svg{color:#b94e42}.estimate-section{padding-bottom:0}.estimate-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:2.5rem;align-items:start}.estimate-fields{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}.estimate-fields fieldset{grid-column:1 / -1;margin:1.2rem 0 0;padding:1rem 0 0;border:0;border-top:1px solid #e6d6ce}.field-label{display:block;margin:.9rem 0 .45rem;color:#433832;font-size:.81rem;font-weight:760}.field-input{display:block;width:100%;min-height:47px;padding:.75rem .85rem;border:1px solid #bba99f;border-radius:.4rem;background:#fff;color:#2b2420;font-size:.95rem}.field-input:focus{border-color:#b94e42;outline:2px solid #efc5bb;outline-offset:1px}textarea.field-input{resize:vertical}.field-help{color:#655a54;font-size:.79rem;margin:.55rem 0 0}.field-help a{color:#9f4035;text-decoration:underline}.addon-choice{display:flex;gap:.7rem;align-items:center;padding:.65rem 0;border-bottom:1px solid #eee3de;font-size:.87rem}.addon-choice input{accent-color:#b94e42;width:18px;height:18px}.addon-choice small{margin-left:auto;color:#76645b}.estimate-total{position:sticky;top:110px;padding:2.2rem;background:#f8e7e0;border-radius:.65rem}.estimate-total>strong{display:block;font-size:clamp(3rem,5vw,4.8rem);line-height:1;letter-spacing:-.08em;margin:.8rem 0}.estimate-total p{color:#5f514b;font-size:.9rem}.contact-page{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,7vw,7rem);align-items:start}.contact-intro h1{font-size:clamp(3rem,5vw,5rem);line-height:1.03;margin:.7rem 0 1rem}.contact-intro>p{color:#655952;font-size:1.06rem;max-width:42ch}.contact-options{display:grid;gap:1rem;margin-top:2rem}.contact-options a{display:inline-flex;align-items:center;gap:.75rem;font-size:.95rem;font-weight:700;word-break:break-word}.contact-options a:hover{color:#ad4539}.form-panel{padding:clamp(1.3rem,3vw,2.5rem);background:#fff;border:1px solid #e7d5cc;border-radius:.7rem;box-shadow:0 20px 50px #70412e14}.form-panel h2{margin-bottom:1.25rem;font-size:1.55rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.inquiry-form>div{margin-bottom:.55rem}.inquiry-form .date-field{margin:.55rem 0}.form-submit{width:100%;margin-top:1rem}.form-alternatives{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin-top:1.1rem}.form-alternatives a{display:inline-flex;align-items:center;gap:.4rem;color:#864239;font-size:.85rem;font-weight:700}.form-error{background:#fff0ec;color:#922d25;border-left:3px solid #c64f43;padding:.8rem 1rem;font-size:.9rem}.form-result{padding:1.5rem;background:#f1f7ed;border-radius:.5rem}.form-result svg{color:#39734e}.form-result h3{font-size:1.8rem;margin:.4rem 0}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.site-footer{background:#2e2927;color:#f8f1ec;padding:4.5rem 0 6.5rem}.footer-main{display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:clamp(2rem,6vw,7rem)}.footer-brand p{max-width:34ch;color:#cfc0b9;margin:1rem 0;font-size:.91rem}.footer-social{display:inline-flex;align-items:center;gap:.4rem;border-bottom:1px solid #bca39a;padding-bottom:.2rem}.site-footer h2{font-size:.75rem;text-transform:uppercase;letter-spacing:.14em;color:#d5a79b;margin-bottom:1.2rem}.site-footer nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem}.site-footer nav a,.footer-contact a{color:#eee2dc;font-size:.9rem}.site-footer a:hover{color:#ffc3b3}.footer-contact a{display:flex;align-items:center;gap:.5rem;word-break:break-word}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem;padding-top:1.75rem;margin-top:4rem;border-top:1px solid #665954;color:#c5b5ac;font-size:.75rem}.footer-bottom>div{display:flex;gap:1.2rem;flex-wrap:wrap}.mobile-action{display:none}@media(max-width:1090px){.desktop-nav{gap:.75rem}.desktop-nav a{font-size:.8rem}.header-inner{gap:1rem}.header-cta{font-size:.76rem!important}}@media(max-width:900px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:inline-flex}.mobile-nav.is-open{display:grid;padding:.6rem max(1.25rem,calc((100vw - 1240px)/2));border-top:1px solid #eadfd9;background:#fffbf7;box-shadow:0 15px 25px #4425181a}.mobile-nav a{display:flex;justify-content:space-between;padding:.86rem .25rem;border-bottom:1px solid #f0e1d9;font-weight:760}.mobile-nav a[aria-current=page]{color:#a43c33}.hero,.service-hero{gap:2rem}.hero-copy h1{font-size:clamp(3.1rem,6vw,5rem)}.package{padding:1.3rem}.package h2{font-size:1.3rem}}@media(max-width:700px){.section-wrap{width:min(100% - 2rem,1240px)}.header-inner{min-height:68px}.brand-wordmark{font-size:1.34rem}.hero,.service-hero,.why-layout,.about-layout,.contact-page,.estimate-layout,.calendar-feature{grid-template-columns:1fr}.hero{padding-block:2.6rem 4rem}.hero-copy h1{font-size:clamp(3.3rem,11vw,5rem);margin-block:.7rem 1rem}.hero-visual{height:390px;border-bottom-right-radius:3.5rem}.hero-visual span{font-size:.73rem}.hero-actions .button{flex:1 1 auto}.trust-strip{gap:.7rem;flex-wrap:wrap;font-size:.7rem}.trust-strip span+span:before{margin-right:.7rem}.site-section{padding-block:4rem}.event-grid{grid-template-columns:1fr 1fr}.event-card:first-child{grid-column:1 / -1}.event-card{height:250px}.event-card:first-child{height:340px}.why-layout{gap:2.5rem}.calendar-feature{gap:1.25rem}.calendar-feature-copy h2{max-width:none}.calendar-feature-image{display:none}.story-grid{grid-template-columns:1fr 1fr}.story-photo{height:270px}.story-photo:last-child{grid-column:1 / -1;height:300px}.section-heading-row{align-items:start;flex-direction:column;gap:0}.gallery-grid,.gallery-preview{grid-template-columns:1fr 1fr}.gallery-tile,.gallery-tile.portrait{height:245px}.gallery-preview .gallery-tile:nth-child(4){display:block}.package-grid,.detail-grid{grid-template-columns:1fr}.service-hero{padding-block:3.5rem 1rem}.service-hero img{height:350px;border-bottom-right-radius:3rem}.contact-page{gap:1.5rem}.estimate-total{position:static}.footer-main{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}.footer-contact{min-width:0}.mobile-action{position:fixed;display:flex;align-items:center;gap:.7rem;inset:auto 0 0;z-index:45;padding:.7rem 1rem max(.7rem,env(safe-area-inset-bottom));background:#fffbf7fa;border-top:1px solid #e8d5cc}.mobile-action .button{flex:1;min-height:44px}.mobile-action>a:last-child{display:grid;place-items:center;width:45px;height:45px;background:#e8f5ed;border-radius:.5rem;color:#236341}}@media(max-width:490px){.hero-visual{height:300px}.event-grid{gap:.6rem}.event-card{height:205px}.event-card:first-child{height:290px}.event-card>span{font-size:1.12rem;inset:auto .7rem .7rem}.gallery-grid{gap:.55rem}.gallery-tile,.gallery-tile.portrait{height:190px}.gallery-tile span{inset:auto .6rem .6rem;font-size:.76rem}.calendar-shell{padding:.85rem}.calendar-day{min-height:32px;font-size:.82rem}.calendar-footer{align-items:stretch;flex-direction:column;gap:.5rem}.calendar-footer input{max-width:none;width:100%}.story-grid{gap:.6rem}.story-photo{height:205px}.story-photo:last-child{height:245px}.story-photo figcaption{left:.7rem;bottom:.7rem;font-size:.9rem}.form-row,.estimate-fields,.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}.site-footer{padding-bottom:7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero:before,.hero-glint{animation:none}.hero-glint{opacity:.65;transform:none}.hero-shooting-star{display:none}.hero-visual img{transform:none;will-change:auto}.motion-ready:not(.is-visible),.motion-ready.is-visible{opacity:1;transform:none}.event-card:hover img,.gallery-tile:hover img,.story-photo:hover img,.calendar-feature-image:hover img{transform:none}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
