:root{--rose:#e8d1d0;--oat:#f4efe8;--lav:#b9a6b9;--taupe:#71605f;--white:#fff;--ink:#34302f;--muted:#827775;--line:#e5dcd5;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font-family:var(--sans);font-size:14px;font-weight:400;line-height:1.8}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.announcement{text-align:center;background:var(--oat);padding:7px 15px;font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--taupe)}.site-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,76px);background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(113,96,95,.1)}.brand{display:flex;align-items:center;gap:10px;min-width:180px}.brand-logo{display:block;width:auto;height:auto;max-width:190px;max-height:64px;object-fit:contain}.brand-mark{font-family:var(--serif);font-size:28px;letter-spacing:-.12em;color:var(--taupe);border:1px solid var(--rose);border-radius:50%;width:43px;height:43px;display:grid;place-items:center}.brand-mark span{color:#b88e91}.brand-name{font-family:var(--serif);font-size:22px;line-height:1.05}.brand-name i{display:block;font-size:14px;letter-spacing:.18em;font-style:normal;text-transform:uppercase;text-align:right}.main-nav{display:flex;gap:clamp(12px,2vw,28px);align-items:center}.main-nav a{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#554c4a;transition:color .2s}.main-nav a:hover{color:#b88e91}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--taupe);color:#fff;padding:14px 25px;border:1px solid var(--taupe);font-size:10px;letter-spacing:.13em;text-transform:uppercase;transition:.25s;cursor:pointer}.btn:hover{background:transparent;color:var(--taupe)}.btn-outline{background:transparent;color:var(--taupe)}.btn-outline:hover{background:var(--taupe);color:#fff}.btn-small{padding:12px 17px;font-size:9px}.menu-toggle{display:none;border:0;background:none;font-size:24px;color:var(--taupe)}.hero{min-height:660px;display:grid;grid-template-columns:1fr 1fr;background:var(--oat)}.hero-copy{padding:clamp(50px,9vw,130px) 8vw;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.eyebrow{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--taupe);margin:0 0 18px}.hero h1,.page-hero h1{font-family:var(--serif);font-size:clamp(48px,6vw,82px);line-height:.98;font-weight:400;margin:0 0 24px;max-width:650px}.hero-copy p{max-width:440px;color:#6f6662;margin:0 0 30px}.hero-image{min-height:550px;background:linear-gradient(135deg,#d8c5bc,#f1e8df);position:relative;overflow:hidden}.hero-image img,.image-cover{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.hero-image:after{content:'FLOWERS · MOMENTS · MEMORIES';position:absolute;bottom:24px;right:25px;color:white;font-size:9px;letter-spacing:.2em;text-shadow:0 1px 8px #555}.placeholder-art{height:100%;min-height:420px;background:radial-gradient(ellipse at 55% 40%,#fff8f1 0 8%,transparent 9%),radial-gradient(ellipse at 45% 45%,#c89b9b 0 12%,transparent 13%),radial-gradient(ellipse at 65% 55%,#e7c9c4 0 14%,transparent 15%),linear-gradient(135deg,#c9b4aa,#eee2d8);display:grid;place-items:center;color:#fff;font-family:var(--serif);font-size:28px;letter-spacing:.1em}.section{padding:100px clamp(22px,7vw,110px)}.section-soft{background:var(--oat)}.section-heading{text-align:center;max-width:650px;margin:0 auto 50px}.section-heading h2,.content-copy h2{font:400 clamp(38px,4.5vw,58px)/1.05 var(--serif);margin:0 0 18px}.section-heading p{color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{position:relative;min-height:340px;background:#e9ded6;overflow:hidden}.service-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .6s}.service-card:hover img{transform:scale(1.05)}.service-card .card-overlay{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(35,27,25,.65));display:flex;flex-direction:column;justify-content:flex-end;padding:25px;color:white}.service-card h3{font:400 32px var(--serif);margin:0}.service-card p{font-size:11px;margin:2px 0 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.split-image{min-height:520px;background:linear-gradient(145deg,#e8d1d0,#c5aaa5);display:grid;place-items:center;color:white;font:32px var(--serif)}.content-copy p{color:var(--muted);margin:0 0 20px}.text-link{display:inline-block;border-bottom:1px solid var(--taupe);padding:6px 0;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.quote-band{background:#71605f;color:white;text-align:center;padding:80px 20px}.quote-band blockquote{font:italic clamp(30px,4vw,48px)/1.2 var(--serif);max-width:850px;margin:0 auto 18px}.quote-band span{font-size:10px;letter-spacing:.18em;text-transform:uppercase}.page-hero{background:var(--oat);padding:90px 20px 80px;text-align:center}.page-hero h1{font-size:clamp(45px,6vw,72px);margin:0 auto 18px}.page-hero p{max-width:650px;margin:auto;color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-item{height:340px;background:linear-gradient(140deg,#ead8d2,#c4aaa2);position:relative;overflow:hidden;cursor:pointer}.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.gallery-item:hover img{transform:scale(1.04)}.gallery-item .gallery-fallback{height:100%;display:grid;place-items:center;color:#fff;font:28px var(--serif)}.filters{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-bottom:35px}.filter-btn{border:1px solid var(--line);background:#fff;padding:9px 16px;color:var(--taupe);font:10px var(--sans);letter-spacing:.06em;cursor:pointer}.filter-btn.active,.filter-btn:hover{background:var(--taupe);color:#fff;border-color:var(--taupe)}.form-wrap{max-width:850px;margin:auto;background:#fff;padding:clamp(22px,5vw,55px);box-shadow:0 10px 45px rgba(65,48,43,.07)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--taupe)}input,select,textarea{width:100%;padding:13px 14px;border:1px solid var(--line);background:#fff;font:13px var(--sans);color:var(--ink);border-radius:0}textarea{min-height:120px;resize:vertical}input:focus,select:focus,textarea:focus{outline:1px solid var(--lav);border-color:var(--lav)}.checkline{display:flex;align-items:flex-start;gap:10px;font-size:11px;color:var(--muted)}.checkline input{width:auto;margin-top:5px}.notice{padding:13px 16px;margin:0 0 20px;background:#f4efe8;color:#554c4a}.site-footer{background:#eee7e0;padding:65px clamp(22px,7vw,110px) 20px}.footer-top{display:grid;grid-template-columns:2fr 1fr 1.3fr 1fr;gap:40px;padding-bottom:45px}.footer-top h3{font:400 24px var(--serif);margin:0 0 15px}.footer-top a:not(.brand),.footer-top span{display:block;font-size:11px;color:#6f6662;margin:5px 0}.footer-top p{max-width:260px;color:#6f6662;font-size:12px}.footer-legal{border-top:1px solid #d9cec5;padding-top:18px;display:flex;justify-content:space-between;gap:20px;color:#827775;font-size:9px}.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:35px 0}.contact-card{padding:25px;background:var(--oat);text-align:center}.contact-card strong{display:block;font:26px var(--serif);margin-bottom:5px}.admin-body{background:#f7f5f2}.admin-shell{max-width:1200px;margin:45px auto;padding:0 20px}.admin-nav{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0}.admin-nav a{padding:10px 14px;background:#fff;border:1px solid var(--line);font-size:12px}.admin-table{width:100%;border-collapse:collapse;background:#fff;font-size:12px}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.admin-table th{background:var(--oat);font-weight:500}.status{display:inline-block;padding:3px 8px;background:#eee7e0;font-size:10px}.admin-card{background:#fff;padding:25px;margin-bottom:20px}.admin-card h2{font:32px var(--serif);margin-top:0}.lightbox{position:fixed;inset:0;background:rgba(25,20,19,.92);z-index:50;display:none;align-items:center;justify-content:center;padding:30px}.lightbox.open{display:flex}.lightbox img{max-height:85vh;max-width:90vw;object-fit:contain}.lightbox button{position:absolute;top:20px;right:25px;background:none;border:0;color:white;font-size:32px;cursor:pointer}.hidden{display:none!important}@media(max-width:1050px){.main-nav{gap:12px}.main-nav a{font-size:9px}.header-cta{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.site-header{height:72px;padding:0 18px}.menu-toggle{display:block;order:3}.main-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.main-nav a{padding:8px;font-size:11px}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 25px}.hero-image{min-height:380px}.section{padding:70px 22px}.split{grid-template-columns:1fr;gap:35px}.split-image{min-height:340px}.service-grid{grid-template-columns:1fr 1fr;gap:10px}.service-card{min-height:250px}.gallery-grid{grid-template-columns:1fr 1fr;gap:10px}.gallery-item{height:230px}.footer-top{grid-template-columns:1fr 1fr;gap:25px}.footer-legal{flex-direction:column}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.contact-cards{grid-template-columns:1fr}.page-hero{padding:65px 20px}.brand{min-width:0}.brand-logo{max-width:155px;max-height:52px}.brand-name{font-size:19px}}@media(max-width:420px){.service-grid,.gallery-grid{grid-template-columns:1fr}.service-card{min-height:300px}.gallery-item{height:290px}}

/* Logo sizing: balanced proportions for header and footer */
.site-header{height:84px;min-height:84px;padding:6px clamp(16px,4vw,60px)}
.site-header>.brand{flex:0 0 auto;min-width:0;width:112px;height:74px;display:flex;align-items:center;justify-content:center;background:#10070d;border-radius:3px;padding:0;overflow:hidden}
.site-header .brand-logo{display:block;width:108px;height:72px;max-width:none;max-height:none;object-fit:contain}
.footer-brand{display:inline-flex;width:126px;height:84px;min-width:0;align-items:center;justify-content:center;background:#10070d;border-radius:3px;padding:0;margin-bottom:12px;overflow:hidden}
.footer-logo{display:block;width:122px;height:82px;max-height:none;object-fit:contain}
.footer-brand .brand-mark,.footer-brand .brand-name{display:none}
@media(max-width:1050px){.site-header{padding-left:18px;padding-right:18px}.site-header>.brand{width:100px;height:67px}.site-header .brand-logo{width:98px;height:65px}}
@media(max-width:760px){.site-header{height:72px;min-height:72px;padding:4px 14px}.site-header>.brand{width:86px;height:58px}.site-header .brand-logo{width:84px;height:56px}.main-nav{top:72px}.footer-brand{width:112px;height:75px}.footer-logo{width:108px;height:73px}}
@media(max-width:420px){.site-header>.brand{width:78px;height:52px}.site-header .brand-logo{width:76px;height:50px}}
