:root{--paper:#faf6ef;--cream:#f0e9de;--ink:#472b32;--berry:#812b45;--rose:#ebc2c8;--line:#d8c8c6;--muted:#745d60;--serif:'Cormorant Garamond',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a,button{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--berry);outline-offset:5px}::selection{background:var(--rose)}.skip{position:fixed;top:-90px;background:var(--berry);color:white;padding:12px;z-index:100}.skip:focus{top:0}.concept{background:var(--berry);color:#fff5ec;text-align:center;font-size:9px;letter-spacing:1.7px;padding:8px 20px}.concept span{margin-left:24px;letter-spacing:.7px;opacity:.85}header{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:25px 5.5%;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:10}.wordmark{font-family:var(--serif);font-size:35px;line-height:.9;white-space:nowrap;letter-spacing:-1.3px}.wordmark i{font-weight:400;color:var(--berry)}.wordmark span{display:block;font:8px var(--sans);letter-spacing:1.5px;margin-top:12px}.menu-toggle{display:none}nav{display:flex;align-items:center;gap:32px;font-size:12px}nav a:not(.nav-cta){position:relative}nav a:not(.nav-cta):after{content:'';position:absolute;left:0;bottom:-5px;width:0;height:1px;background:var(--berry);transition:width .3s}nav a:hover:after{width:100%}.nav-cta{border:1px solid var(--berry);padding:11px 20px;border-radius:30px;transition:background .3s,color .3s}.nav-cta span{margin-left:20px}.nav-cta:hover{background:var(--berry);color:white}.hero{padding:64px 5.5% 83px;display:grid;grid-template-columns:1.05fr 1fr;gap:40px;max-width:1600px;margin:auto;overflow:hidden}.hero-copy{padding-top:27px}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2px;line-height:1.5;margin:0 0 24px;color:var(--berry)}.tiny-flower{font-size:23px;vertical-align:middle;margin-right:10px}h1,h2,h3,p,figure{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:.99;letter-spacing:-1.7px}h1{font-size:clamp(66px,6.25vw,102px);margin-bottom:27px}h1 em,h2 em{font-weight:400;color:var(--berry)}.intro{max-width:355px;color:var(--muted);font-size:14px;line-height:1.9}.hero-actions{display:flex;gap:27px;align-items:center;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--berry);color:#fff8ee;padding:16px 24px;border-radius:35px;border:1px solid var(--berry);font-size:12px;transition:transform .3s,background .3s,box-shadow .3s}.button:hover{background:#652039;transform:translateY(-3px);box-shadow:0 8px 20px #812b4522}.button span{font-size:20px;line-height:1}.text-link{font-size:11px;border-bottom:1px solid var(--line);padding-bottom:5px}.text-link span{margin-left:12px}.hero-note{display:flex;align-items:center;gap:10px;margin:27px 0 0 140px;transform:rotate(-6deg);font:italic 20px/1.2 var(--serif);color:var(--berry)}.hero-note svg{width:80px;fill:none;stroke:var(--berry);stroke-width:1.3}.hero-art{position:relative;min-height:580px;padding:0 44px 0 22px}.arch{height:585px;border-radius:210px 210px 16px 16px;overflow:hidden;background:var(--rose);transform:rotate(3deg);border:7px solid #fffaf4;box-shadow:0 15px 40px #472b3212}.arch img{object-position:50% 50%;animation:picture-in 1.4s ease both}.photo-label{font:italic 18px var(--serif);text-align:center;margin-top:18px;transform:rotate(3deg)}.little-photo{position:absolute;width:178px;height:170px;bottom:-5px;left:-46px;padding:8px 8px 25px;background:#fffaf4;transform:rotate(-9deg);box-shadow:0 10px 30px #472b3225}.little-photo figcaption{font:italic 16px var(--serif);text-align:center;margin-top:5px}.flower-stamp{position:absolute;right:5px;top:20px;color:var(--paper);width:116px;height:116px;display:grid;place-items:center}.flower-stamp>span{position:absolute;font-size:140px;line-height:1;color:var(--berry);animation:turn-stamp 45s linear infinite}.flower-stamp small{position:relative;font-size:8px;letter-spacing:1px;text-align:center;line-height:1.5;transform:rotate(12deg)}.occasion-strip{display:flex;align-items:center;justify-content:space-around;gap:24px;padding:20px 4%;border-block:1px solid var(--line);font-size:10px;letter-spacing:1.6px;white-space:nowrap;overflow:hidden;background:#f5e9e5}.occasion-strip i{font-style:normal;font-size:20px;color:var(--berry)}.section{max-width:1600px;margin:auto;padding:105px 6.5%}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:55px}h2{font-size:clamp(46px,4.7vw,70px);margin-bottom:0}.section-heading>p{max-width:300px;color:var(--muted);font-size:13px;line-height:1.9;margin-bottom:5px}.experience-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px}.experience:nth-child(2){padding-top:55px}.experience .image-wrap{height:300px;border-radius:150px 150px 12px 12px;overflow:hidden;position:relative;margin-bottom:24px}.experience:nth-child(2) .image-wrap{border-radius:12px 12px 150px 150px;height:340px}.experience:nth-child(3) .image-wrap{border-radius:150px 150px 12px 12px}.image-wrap img{transition:transform .8s}.experience:hover img{transform:scale(1.045)}.number{position:absolute;bottom:15px;left:16px;border-radius:50%;background:var(--paper);width:35px;height:35px;display:grid;place-items:center;font-size:10px}h3{font-size:36px;letter-spacing:-.8px;margin-bottom:14px}.experience p{font-size:13px;color:var(--muted);line-height:1.85;max-width:310px}.experience a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0;font-size:11px}.occasion-section{background:var(--berry);color:var(--paper);position:relative;padding:80px 6.5%}.occasion-section:before,.occasion-section:after{content:'';position:absolute;left:0;width:100%;height:12px;background:radial-gradient(circle at 12px 0,var(--paper) 11px,transparent 12px) repeat-x;background-size:24px 12px}.occasion-section:before{top:0}.occasion-section:after{bottom:0;transform:rotate(180deg)}.occasion-inner{max-width:1100px;margin:auto}.occasion-inner>.eyebrow{color:var(--rose);text-align:center}.occasion-inner>h2{text-align:center}.occasion-inner h2 em{color:var(--rose)}.occasion-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin:37px 0}.occasion-tabs button{border:1px solid #ffffff55;background:transparent;color:var(--paper);border-radius:40px;padding:10px 22px;font-size:12px;transition:background .25s,color .25s}.occasion-tabs button[aria-selected=true]{color:var(--berry);background:var(--paper)}.occasion-tabs button:focus-visible{outline-color:var(--rose)}#occasion-panel{display:flex;align-items:center;gap:30px;border-block:1px solid #ffffff38;padding:30px;min-height:180px;max-width:850px;margin:auto}#occasion-panel h3{font-size:38px;margin-bottom:12px}#occasion-panel p{font-size:13px;max-width:540px;margin-bottom:0;color:#f0d8dd}.occasion-symbol{font:75px var(--serif);color:var(--rose);min-width:70px}.circle-link{border:1px solid #ffffff55;border-radius:50%;width:50px;height:50px;flex-shrink:0;display:grid;place-items:center;font-size:25px;transition:transform .25s}.circle-link:hover{transform:rotate(45deg)}.small-note{text-align:center;font-size:10px;color:#edd0d8;margin:20px 0 0}.panel-change{animation:panel-in .45s ease}.gallery{display:grid;grid-template-columns:1.15fr 1fr .85fr;align-items:start;gap:24px}.gallery-photo{position:relative;border:0;padding:0;border-radius:14px;overflow:hidden;height:430px;background:var(--cream)}.gallery-photo:nth-child(2){height:330px;margin-top:65px}.gallery-photo:nth-child(3){height:390px;margin-top:20px;border-radius:150px 150px 14px 14px}.gallery-photo img{transition:transform .7s}.gallery-photo:hover img{transform:scale(1.055)}.gallery-photo span{position:absolute;bottom:0;left:0;width:100%;text-align:left;padding:40px 20px 20px;background:linear-gradient(transparent,#2d1222b8);color:white;font:italic 22px var(--serif);display:flex;justify-content:space-between}.photo-credit{font-size:9px;color:var(--muted);margin:22px 0 0}.photo-credit a{text-decoration:underline;text-underline-offset:3px}.story{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:var(--cream);align-items:center}.story-photo{position:relative;height:490px;transform:rotate(-3deg);padding:13px 13px 40px;background:var(--paper)}.story-photo img{object-position:50% 38%}.handwritten{display:block;font:italic 22px var(--serif);text-align:center;padding-top:8px}.story-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);max-width:400px}.story-copy h2{margin-bottom:28px}.story-copy .story-signature{font:italic 28px/1.2 var(--serif)!important;color:var(--berry)!important;margin:28px 0}.process h2{margin-bottom:50px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.process-grid article{border-top:1px solid var(--line);padding-top:20px}.process-grid span{font-size:9px;letter-spacing:1.7px;color:var(--berry)}.process-grid h3{font-size:32px;margin:25px 0 15px}.process-grid p{font-size:13px;color:var(--muted);max-width:300px}.inquire{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;background:repeating-linear-gradient(90deg,#f1dfdc 0,#f1dfdc 32px,#f5e7e2 32px,#f5e7e2 64px);border-radius:40px;margin:0 3%;max-width:none;padding:80px 6%}.contact-copy h2{font-size:clamp(45px,4.7vw,72px);margin-bottom:25px}.contact-copy>p:not(.eyebrow){max-width:330px;font-size:13px}.contact-copy>a{display:block;font-size:13px;margin-bottom:10px;text-decoration:underline;text-underline-offset:5px}.demo-note{font-size:10px!important;line-height:1.8;margin-top:32px;color:var(--muted)}form{background:var(--paper);padding:35px;border-radius:20px;align-self:center}form h3{font-size:36px;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{font-size:10px;font-weight:500;display:block;margin-bottom:14px}label span{font-weight:400}input,select,textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font-size:12px;padding:10px 0;min-height:42px}textarea{resize:vertical}::placeholder{color:#8a7578;opacity:1}form .button{width:100%;margin-top:15px}#form-status,#email-fallback{font-size:10px;color:var(--muted);margin:15px 0 0}#email-fallback{display:block}#email-fallback[hidden]{display:none}.faq{display:grid;grid-template-columns:1fr 1fr;gap:60px}.faq h2{font-size:52px}.faq details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:12px;padding:20px 0;display:flex;justify-content:space-between;gap:20px}summary::-webkit-details-marker{display:none}summary span{color:var(--berry);transition:transform .3s}details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;color:var(--muted);max-width:470px;line-height:1.9;animation:panel-in .3s ease}footer{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px;background:var(--cream);padding:55px 6.5% 25px;font-size:11px}footer p{color:var(--muted)}footer>div a{display:block;margin-bottom:10px}.footer-note{grid-column:1/-1;border-top:1px solid var(--line);padding-top:23px;font-size:9px}.reveal{opacity:1;transform:none}.motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.motion .reveal.visible{opacity:1;transform:none}.experience:nth-child(2),.process-grid article:nth-child(2){transition-delay:.1s}.experience:nth-child(3),.process-grid article:nth-child(3){transition-delay:.2s}dialog{max-width:90vw;max-height:92vh;border:0;background:var(--paper);padding:16px;border-radius:15px;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#2b172bd9;backdrop-filter:blur(5px)}dialog img{max-height:76vh;width:auto;max-width:80vw;object-fit:contain;margin:auto}dialog p{text-align:center;font-size:12px;margin:12px 20px 0}.close-dialog{position:absolute;right:23px;top:23px;background:var(--paper);border:0;border-radius:50%;height:40px;width:40px;font-size:26px;color:var(--berry)}@keyframes picture-in{from{transform:scale(1.08);opacity:.3}to{transform:scale(1);opacity:1}}@keyframes turn-stamp{to{transform:rotate(360deg)}}@keyframes panel-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.inquire{max-width:1500px;margin:auto}}@media(max-width:1100px){header{padding-inline:4%}nav{gap:17px}.hero{padding-inline:5%;gap:25px}.hero-art{padding-right:10px;min-height:530px}.arch{height:530px}.hero h1{font-size:72px}.hero-actions{gap:15px}.hero-actions .button{padding-inline:17px;gap:15px}.hero-note{margin-left:60px}.little-photo{left:-20px;width:150px;height:150px}.section{padding:80px 5%}.story{gap:55px}.inquire{padding:65px 4%;gap:40px}.experience-grid{gap:25px}.gallery-photo{height:350px}.gallery-photo:nth-child(3){height:330px}}
@media(max-width:760px){.concept{font-size:8px;letter-spacing:1px}.concept span{display:none}header{padding:22px 6%;flex-wrap:wrap}.wordmark{font-size:31px}.wordmark span{font-size:7px}.menu-toggle{display:flex;gap:15px;align-items:center;border:1px solid var(--line);border-radius:30px;background:none;padding:7px 13px;font-size:11px;color:var(--ink)}nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding:15px 0 0;gap:18px}nav.open{display:flex}.nav-cta{display:flex;justify-content:space-between}.hero{grid-template-columns:1fr;padding:35px 6% 65px;gap:45px}.hero-copy{padding-top:5px}.eyebrow{font-size:9px;margin-bottom:20px;letter-spacing:1.4px}.hero h1{font-size:clamp(60px,12vw,86px);line-height:.98;letter-spacing:-1.7px}.intro{font-size:13px;max-width:340px}.hero-actions{gap:22px}.hero-actions .button{padding:14px 19px;gap:20px}.hero-note{display:none}.hero-art{padding:0 20px 0 35px;min-height:480px;max-width:470px;width:100%;margin:auto}.arch{height:470px;border-radius:210px 210px 15px 15px;transform:rotate(2deg)}.little-photo{left:0;bottom:-12px;width:137px;height:135px}.flower-stamp{right:0;top:8px;width:95px;height:95px}.flower-stamp>span{font-size:116px}.flower-stamp small{font-size:7px}.photo-label{font-size:16px;margin-left:100px}.occasion-strip{justify-content:flex-start;gap:20px;padding:15px 6%;font-size:9px}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:35px}.section-heading>p{margin:23px 0 0;max-width:330px;font-size:12px}h2{font-size:49px}.experience-grid{grid-template-columns:1fr;gap:40px}.experience{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;align-items:start}.experience .image-wrap,.experience:nth-child(2) .image-wrap{grid-row:1/4;height:250px;margin:0}.experience:nth-child(2){padding-top:0}.experience h3{font-size:29px;margin:20px 0 12px}.experience p{font-size:12px;margin-bottom:10px;line-height:1.75}.experience a{font-size:10px;align-self:end}.occasion-section{padding:60px 6%}.occasion-section h2{font-size:44px}.occasion-tabs{gap:8px;margin:28px 0}.occasion-tabs button{font-size:11px;padding:9px 14px}#occasion-panel{padding:25px 0;gap:15px;min-height:220px}#occasion-panel h3{font-size:31px}#occasion-panel p{font-size:12px}.occasion-symbol{font-size:45px;min-width:35px}.circle-link{width:38px;height:38px;font-size:19px}.small-note{font-size:9px}.gallery{grid-template-columns:1fr 1fr;gap:15px}.gallery-photo{height:300px}.gallery-photo:nth-child(2){height:250px;margin-top:35px}.gallery-photo:nth-child(3){grid-column:1/-1;width:75%;height:360px;margin:5px auto 0;border-radius:150px 150px 14px 14px}.gallery-photo span{font-size:20px;padding:40px 13px 15px}.story{grid-template-columns:1fr;gap:50px}.story-photo{height:400px;max-width:430px;margin-inline:8px}.story-copy p{max-width:none}.process-grid{grid-template-columns:1fr;gap:23px}.process h2{margin-bottom:35px}.process-grid article{display:grid;grid-template-columns:1fr 1.2fr;gap:0 18px}.process-grid article span{grid-column:1/-1}.process-grid h3{font-size:28px;margin-top:15px}.process-grid p{font-size:12px;margin:15px 0 0}.inquire{grid-template-columns:1fr;border-radius:24px;margin:0 4%;padding:55px 6%;gap:30px}.contact-copy h2{font-size:55px}.demo-note{margin-top:22px}form{padding:25px 20px}form h3{font-size:32px}.form-grid{grid-template-columns:1fr;gap:0}.faq{grid-template-columns:1fr;gap:30px}.faq h2{font-size:46px}footer{grid-template-columns:1fr 1fr;padding:45px 6% 20px;gap:25px}footer .wordmark{grid-column:1/-1}.footer-note{font-size:9px}dialog p{font-size:11px}.motion .reveal{transition-duration:.5s}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion .reveal{opacity:1;transform:none}}@media(max-width:370px){.hero h1{font-size:55px}.hero-actions{gap:12px}.hero-art{min-height:410px}.arch{height:400px}.experience{grid-template-columns:.9fr 1.1fr;gap:0 15px}.experience .image-wrap,.experience:nth-child(2) .image-wrap{height:230px}.hero-actions .button{font-size:11px;padding:13px 15px}.text-link{font-size:10px}}
.flower-stamp{background:var(--berry);border-radius:50%;border:1px solid #f1d9dd;outline:5px solid var(--berry);width:100px;height:100px;right:9px;top:25px}.flower-stamp>span{display:none}.flower-stamp small{color:var(--paper);font-size:8px;letter-spacing:1.4px}.flower-stamp:after{content:'✳';position:absolute;bottom:12px;font-size:16px;color:var(--rose)}@media(max-width:760px){.flower-stamp{width:80px;height:80px;top:15px;right:7px}.flower-stamp small{font-size:6px}.flower-stamp:after{bottom:7px;font-size:13px}}
