@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap";:root{color:#27302a;font-synthesis:none;text-rendering:optimizelegibility;--rose:#c9415d;--rose-dark:#9f2441;--leaf:#526f57;--ink:#27302a;--cream:#fbf8f4;--paper:#fffefd;--muted:#7b8178;--line:#eadfd8;--shadow:0 22px 70px #382a2724;background:#fbf8f4;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at top left, #c9415d17, transparent 34rem), radial-gradient(circle at 92% 22%, #526f571a, transparent 28rem), var(--cream);min-width:320px;margin:0;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.progress{background:var(--rose);transform-origin:0%;z-index:100;height:4px;position:fixed;top:0;left:0;right:0}.nav-shell{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);z-index:50;background:#fffdfadb;border:1px solid #eadfd8bf;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;width:calc(100% - 32px);max-width:1180px;padding:12px 14px 12px 22px;display:flex;position:fixed;top:18px;left:50%;transform:translate(-50%);box-shadow:0 20px 60px #27302a1a}.brand{white-space:nowrap;font-family:Cormorant Garamond,serif;font-size:clamp(22px,2vw,28px);font-weight:700}.brand span{color:var(--rose)}.nav-links{align-items:center;gap:8px;display:flex}.nav-links a{color:#596057;border-radius:999px;padding:10px 13px;font-size:14px;font-weight:700;transition:background .25s,color .25s,transform .25s}.nav-links a.active,.nav-links a:hover{color:var(--rose-dark);background:#f3e5e3;transform:translateY(-1px)}.nav-cta,.button,.small-button{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:9px;font-weight:800;display:inline-flex}.nav-cta{background:var(--ink);color:#fff;padding:12px 18px;transition:background .25s,transform .25s}.nav-cta:hover,.button:hover,.small-button:hover{transform:translateY(-2px)}.button{min-height:50px;padding:0 24px}.button.primary{background:linear-gradient(135deg, var(--rose), var(--rose-dark));color:#fff;box-shadow:0 14px 35px #c9415d47}.button.ghost{color:#fff;background:#ffffff2e;border:1px solid #ffffff73}.icon-button{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:none}.hero{color:#fff;align-items:end;min-height:96vh;padding:130px max(24px,50vw - 590px) 58px;display:grid;position:relative;overflow:hidden}.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-bg{z-index:0;background:url(/images/hero-flowers.jpeg) 50%/cover;min-height:112%}.hero-overlay{z-index:1;background:radial-gradient(circle at 75% 30%,#ffffff2e,#0000 28%),linear-gradient(90deg,#1f1c18d1,#1f1c185c 52%,#1f1c1833)}.hero-content{z-index:2;max-width:760px;position:relative}.hero-content p,.eyebrow,.section-title span,.page-hero span{color:var(--rose);letter-spacing:0;text-transform:uppercase;font-size:13px;font-weight:800}.hero-content p{color:#ffd7df}h1,h2,h3{margin:0;font-family:Cormorant Garamond,serif;line-height:.98}.hero h1{max-width:940px;font-size:clamp(58px,11vw,150px)}.hero-copy{color:#fff2ed;max-width:720px;margin-top:22px;font-size:clamp(17px,2vw,22px);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.hero-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);color:var(--ink);z-index:3;background:#fffdfae0;border:1px solid #ffffffb8;border-radius:8px;max-width:320px;padding:22px;position:absolute;bottom:56px;right:max(24px,50vw - 590px)}.hero-card span,.hero-card small{color:var(--muted);display:block}.hero-card strong{margin:10px 0;font-family:Cormorant Garamond,serif;font-size:28px;line-height:1;display:block}.section{max-width:1180px;margin:0 auto;padding:100px 24px}.section-title{max-width:850px}.intro-grid{grid-template-columns:.95fr 1.05fr;align-items:center;gap:54px;display:grid}.intro-copy h2,.section-title h2{color:var(--ink);margin-top:8px;font-size:clamp(42px,6vw,76px)}.intro-copy p,.section-title p,.service-card p,.product-body p,.post-card p,.page-hero p,.contact-details p{color:var(--muted);line-height:1.75}.text-link{color:var(--rose-dark);align-items:center;gap:8px;margin-top:18px;font-weight:800;display:inline-flex}.video-tile{box-shadow:var(--shadow);border:12px solid #fff;border-radius:8px;min-height:430px;position:relative;overflow:hidden}.video-tile img{object-fit:cover;width:100%;height:100%;position:absolute}.play{background:var(--rose);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.stats-band{color:#fff;background:linear-gradient(135deg,#27302af7,#526f57ed),url(https://images.unsplash.com/photo-1494972308805-463bc619d34e?auto=format&fit=crop&w=1600&q=70) 50%/cover;grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.stat{text-align:center;padding:42px 24px}.stat strong{font-family:Cormorant Garamond,serif;font-size:clamp(42px,5vw,68px);display:block}.stat span{color:#d2d8ce}.rating-stars{color:#ffd166;filter:drop-shadow(0 6px 12px #0000002e);justify-content:center;gap:4px;margin:8px 0 4px;display:flex}.blush{max-width:none;padding-left:max(24px,50vw - 590px);padding-right:max(24px,50vw - 590px)}.product-grid,.post-grid{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px;display:grid}.service-grid{grid-template-columns:repeat(4,1fr);gap:24px;margin-top:42px;display:grid}.service-card,.product-card,.post-card,.contact-card,.contact-details{background:var(--paper);border:1px solid var(--line);border-radius:8px;transition:border-color .3s,box-shadow .3s,transform .3s;box-shadow:0 12px 40px #382a2714}.service-card{min-height:254px;padding:30px;position:relative;overflow:hidden}.service-card:hover,.product-card:hover,.post-card:hover,.contact-card:hover,.contact-details:hover,.legal-card:hover{border-color:#c9415d42;transform:translateY(-4px);box-shadow:0 22px 60px #382a2721}.service-image{opacity:0;z-index:0;background-position:50%;background-size:cover;transition:opacity .45s,transform .65s;position:absolute;inset:0;transform:scale(1.08)}.service-image:after{content:"";background:linear-gradient(135deg,#181f1bd6,#181f1b57),radial-gradient(circle at 20% 10%,#ffffff2e,#0000 36%);position:absolute;inset:0}.service-content{z-index:1;flex-direction:column;min-height:194px;display:flex;position:relative}.service-card:hover .service-image{opacity:1;transform:scale(1)}.service-card:hover .service-content{color:#fff}.service-card:hover p{color:#f5eee7}.service-card:hover svg{color:var(--rose-dark);background:#ffffffeb;box-shadow:0 14px 34px #00000038}.service-card svg{color:var(--rose);box-sizing:content-box;background:#f9e9eb;border-radius:50%;width:34px;height:34px;padding:8px;transition:background .3s,box-shadow .3s,color .3s}.service-card h3,.product-body h3,.post-card h3{margin-top:18px;font-size:30px}.wedding-showcase{color:#fff;background:linear-gradient(135deg,#27302af0,#526f57b8),url(/images/wedding-event-garden.jpeg) 50%/cover;grid-template-columns:.88fr 1.12fr;align-items:center;gap:56px;margin:12px 0 0;padding:110px max(24px,50vw - 590px);display:grid;overflow:hidden}.wedding-copy{max-width:520px}.wedding-copy h2{font-size:clamp(44px,6vw,76px)}.wedding-copy p{color:#f4e9e3;line-height:1.75}.wedding-copy .button{margin-top:20px}.wedding-images{min-height:520px;position:relative}.wedding-image{border:10px solid #ffffffc7;border-radius:8px;overflow:hidden;box-shadow:0 30px 90px #00000052}.wedding-image img{object-fit:cover;width:100%;height:100%}.wedding-image.large{width:82%;height:430px}.wedding-image.floating{width:50%;height:280px;position:absolute;bottom:0;right:0}.image-wrap{aspect-ratio:1/.78;position:relative;overflow:hidden}.image-wrap img,.post-card img,.masonry img,.gallery-strip img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.product-card:hover img,.post-card:hover img,.masonry-item:hover img{transform:scale(1.06)}.image-wrap span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--rose-dark);background:#ffffffe0;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:800;position:absolute;top:16px;left:16px}.product-body{gap:20px;padding:22px;display:grid}.product-footer{justify-content:space-between;align-items:center;display:flex}.product-footer strong{color:var(--rose-dark);font-size:22px}.small-button{background:linear-gradient(135deg, var(--ink), var(--leaf));color:#fff;padding:10px 17px}.gallery-strip{grid-template-columns:repeat(4,1fr);min-height:360px;display:grid}.quote-section{color:#fff;text-align:center;background:linear-gradient(120deg,#27302ae6,#526f57c2),url(https://images.unsplash.com/photo-1504196606672-aef5c9cefc92?auto=format&fit=crop&w=1600&q=85) 50%/cover;padding:110px 24px}.quote-section>div{max-width:760px;margin:0 auto}.quote-mark{color:#ffd7df;height:70px;font-family:Cormorant Garamond,serif;font-size:110px}.quote-section p{font-family:Cormorant Garamond,serif;font-size:clamp(34px,5vw,60px);line-height:1.08}.quote-section span{color:#d6ddd4;margin-top:6px;display:block}.page-hero{color:#fff;background-position:50%;background-size:cover;align-items:end;min-height:520px;padding:150px max(24px,50vw - 590px) 70px;display:flex;position:relative}.page-hero:after{content:"";pointer-events:none;background:linear-gradient(#0000 66%,#fbf8f438);position:absolute;inset:0}.page-hero div{z-index:1;max-width:780px;position:relative}.page-hero h1{font-size:clamp(52px,8vw,105px)}.page-hero p{color:#fff2ed;max-width:680px;font-size:19px}.shop-toolbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:26px;display:flex}.shop-toolbar input,form input,form select,form textarea{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;outline:none;padding:15px 16px;transition:border-color .25s,box-shadow .25s}.shop-toolbar input:focus,form input:focus,form select:focus,form textarea:focus{border-color:#c9415d8c;box-shadow:0 0 0 4px #c9415d1a}.shop-toolbar input{width:100%;max-width:440px}.process{padding-top:20px}.process-row{border-bottom:1px solid var(--line);grid-template-columns:90px 1fr;align-items:center;gap:24px;padding:28px 0;display:grid}.process-row span{color:var(--rose);font-family:Cormorant Garamond,serif;font-size:54px}.process-row p{margin:0;font-size:clamp(22px,3vw,36px);line-height:1.25}.masonry{columns:3 280px;column-gap:24px;margin-top:42px}.masonry-item{break-inside:avoid;margin-bottom:24px;overflow:hidden}.masonry-item img{border-radius:8px;min-height:260px}.post-card{overflow:hidden}.post-card img{aspect-ratio:1/.7}.post-card div{padding:22px}.post-card span{color:var(--rose);text-transform:uppercase;font-size:12px;font-weight:800}.post-card a{color:var(--rose-dark);font-weight:800}.contact-section{grid-template-columns:1.1fr .9fr;align-items:start;gap:28px;display:grid}.contact-card,.contact-details{padding:34px}.contact-card h2,.contact-details h2{margin-bottom:22px;font-size:48px}form{gap:14px;display:grid}form textarea{resize:vertical;min-height:150px}.success{color:var(--leaf);align-items:center;gap:8px;font-weight:800;display:flex}.contact-details p{align-items:center;gap:10px;display:flex}.hours{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:12px;margin-top:24px;padding-top:24px;display:grid}.legal-section{max-width:1040px}.legal-intro{max-width:820px}.legal-intro h2{color:var(--ink);margin-top:8px;font-size:clamp(40px,5vw,68px)}.legal-intro p,.legal-card p,.legal-note p{color:var(--muted);line-height:1.75}.legal-grid{grid-template-columns:repeat(2,1fr);gap:18px;margin-top:42px;display:grid}.legal-card,.legal-note{background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:28px;transition:border-color .3s,box-shadow .3s,transform .3s;position:relative;overflow:hidden;box-shadow:0 12px 40px #382a2712}.legal-card:before{background:linear-gradient(180deg, var(--rose), #c9415d00);content:"";width:4px;height:74px;position:absolute;top:0;left:0}.legal-card h3,.legal-note h3{font-size:31px}.legal-note{margin-top:24px}.footer{color:#fff;background:linear-gradient(135deg,#1f2621f5,#3c5240f0),url(https://images.unsplash.com/photo-1526047932273-341f2a7631f9?auto=format&fit=crop&w=1600&q=70) 50%/cover;grid-template-columns:.92fr 1.08fr;gap:48px;padding:70px max(24px,50vw - 590px);display:grid}.footer-cta{max-width:470px}.footer-cta span{color:#ffd7df;text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800;display:block}.footer-cta .button{margin-top:18px}.footer-grid{grid-template-columns:.75fr 1.35fr .9fr;gap:30px;display:grid}.footer h2,.footer h3{color:#fff}.footer h2{font-size:44px}.footer p,.footer a{color:#cdd5ce;line-height:1.6}.footer a{margin:10px 0;transition:color .25s,transform .25s;display:block}.footer a:hover{color:#fff;transform:translate(3px)}@media (width<=940px){.nav-links{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffdfafa;border-radius:8px;padding:12px;display:none;position:absolute;top:72px;left:16px;right:16px}.nav-links.open{display:grid}.nav-cta{display:none}.icon-button{display:inline-flex}.hero-card{display:none}.intro-grid,.contact-section,.wedding-showcase,.footer,.footer-grid{grid-template-columns:1fr}.wedding-images{min-height:440px}.service-grid,.product-grid,.post-grid,.legal-grid,.stats-band,.gallery-strip{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.nav-shell{border-radius:8px;width:calc(100% - 20px);top:10px}.hero,.page-hero{min-height:100svh;padding-bottom:42px}.hero{align-items:center;padding-top:122px}.hero-overlay{background:radial-gradient(circle at 65% 25%,#ffffff14,#0000 24%),linear-gradient(#1f1c18b3,#1f1c18e0)}.hero h1{font-size:58px}.button{width:100%}.section{padding:72px 18px}.wedding-showcase{padding:76px 18px}.wedding-images{gap:18px;min-height:auto;display:grid}.wedding-image.large,.wedding-image.floating{width:100%;height:auto;position:static}.wedding-image img{aspect-ratio:1/.74}.service-grid,.product-grid,.post-grid,.legal-grid,.stats-band,.gallery-strip{grid-template-columns:1fr}.gallery-strip img{aspect-ratio:1/.72}.shop-toolbar{flex-direction:column;align-items:stretch}.process-row{grid-template-columns:1fr}.footer{padding-bottom:40px}}
