@import url("https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,500;9..144,700;9..144,800&display=swap");
*{box-sizing:border-box;max-width:100%}
html,body{overflow-x:hidden;margin:0;min-width:0}
:root,[data-theme="light"]{--bg:#fef9f0;--bg-soft:#f7eadf;--surface:#fffdf8;--surface-2:#f2ddd9;--text:#30211d;--muted:#6c5850;--line:#dcc8bd;--accent:#c77f88;--accent-2:#9e5260;--accent-text:#fffaf3;--shadow:0 1rem 2.8rem rgba(92,54,47,.13);--overlay:rgba(254,249,240,.12);--ok:#2f7048;--danger:#a22e47}
[data-theme="dark"]{--bg:#2c1b18;--bg-soft:#3b2925;--surface:#49322d;--surface-2:#5a3d37;--text:#fff8ee;--muted:#e2cdbf;--line:#7a5c52;--accent:#e0a1aa;--accent-2:#ffd0d6;--accent-text:#2c1b18;--shadow:0 1rem 2.8rem rgba(0,0,0,.34);--overlay:rgba(44,27,24,.14);--ok:#9bd9ac;--danger:#ff9cab}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.62;overflow-wrap:break-word;background-image:url("assets/paper.svg"),radial-gradient(circle at 12% 8%,color-mix(in srgb,var(--accent) 16%,transparent),transparent clamp(12rem,32vw,30rem)),linear-gradient(135deg,var(--bg),var(--bg-soft));background-attachment:fixed;background-blend-mode:multiply,normal,normal}a{color:inherit;text-decoration:none;overflow-wrap:anywhere}img,svg{display:block;width:100%;height:auto}.container{width:min(100% - clamp(2rem,6vw,5rem),78rem);margin-inline:auto}.section{padding-block:clamp(3rem,8vw,7rem)}.eyebrow{color:var(--accent-2);font-size:clamp(.72rem,1.4vw,.88rem);letter-spacing:.13em;text-transform:uppercase;font-weight:850}.section-title,.hero-title,.legal-title{font-family:Fraunces,Georgia,serif;line-height:1;letter-spacing:-.045em;font-weight:800}.section-title{font-size:clamp(2rem,5vw,4.7rem);max-width:68rem}.section-copy,.hero-text,.legal-copy{color:var(--muted);font-size:clamp(1rem,1.7vw,1.16rem);max-width:58rem}.btn{border:1px solid var(--line);border-radius:999rem;color:var(--text);font-weight:850;text-align:center;cursor:pointer;background:var(--surface);transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-.12rem);border-color:var(--accent);box-shadow:0 .8rem 2rem color-mix(in srgb,var(--accent) 18%,transparent)}.btn-primary{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.btn-ghost{background:color-mix(in srgb,var(--surface) 78%,transparent);color:var(--text)}
.site-header{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(1rem);border-bottom:1px solid var(--line)}.nav-wrap{height:clamp(56px,5vw + 44px,72px);padding-inline:clamp(16px,4vw,40px);display:flex;align-items:center;gap:clamp(.45rem,1.5vw,1rem)}.brand-link{display:inline-flex;align-items:center;gap:clamp(.5rem,1.5vw,.8rem);min-width:0;margin-right:auto}.brand-mark{width:clamp(1.9rem,4vw,2.55rem);height:clamp(1.9rem,4vw,2.55rem);color:var(--accent)}.brand-mark svg{fill:currentColor}.brand-name{font-family:Fraunces,Georgia,serif;font-size:clamp(1.05rem,2vw,1.42rem);font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.desktop-nav{display:none;align-items:center;gap:clamp(.8rem,2vw,1.35rem)}.desktop-nav a{font-size:clamp(.82rem,1vw,.95rem);white-space:nowrap;color:var(--muted);font-weight:850}.site-header .hdr-cta{display:none;font-size:clamp(.78rem,1vw,.9rem);padding:clamp(.45rem,.8vw,.65rem) clamp(.7rem,1.4vw,1rem);white-space:nowrap}.theme-toggle{position:static;border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:999rem;font:850 clamp(.7rem,1.2vw,.85rem)/1 Inter,system-ui,sans-serif;padding:clamp(.52rem,1vw,.7rem) clamp(.65rem,1.5vw,.9rem);cursor:pointer}.nav-toggle{width:clamp(44px,5vw,48px);height:clamp(44px,5vw,48px);display:grid;place-items:center;border:1px solid var(--line);border-radius:999rem;background:var(--surface);color:var(--text);padding:0;cursor:pointer;position:relative}.nav-toggle span{width:clamp(1rem,2.5vw,1.35rem);height:.125rem;background:var(--text);position:absolute;left:50%;top:50%;transform:translate(-50%,calc(-50% - .25rem));transition:transform .2s ease}.nav-toggle span+span{transform:translate(-50%,calc(-50% + .25rem))}.nav-toggle.is-open span:first-child{transform:translate(-50%,-50%) rotate(45deg)}.nav-toggle.is-open span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}.mobile-drawer{padding-inline:clamp(16px,4vw,40px);padding-block:clamp(1rem,3vw,1.5rem);background:var(--bg-soft);border-bottom:1px solid var(--line)}.mobile-drawer a{display:block;padding-block:clamp(.75rem,2vw,1rem);color:var(--text);font-weight:850}.drawer-cta{padding:clamp(.75rem,2vw,1rem);margin-top:clamp(.6rem,2vw,1rem)}
.hero-section{position:relative;min-height:min(58rem,calc(100svh - clamp(56px,5vw + 44px,72px)));display:grid;align-items:end;isolation:isolate}.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-3}.hero-overlay{position:absolute;inset:0;background:var(--overlay);z-index:-2}.swirl-layer{position:absolute;inset:0;background:url("assets/swirls.svg") center/cover no-repeat;opacity:.5;z-index:-1;pointer-events:none}.hero-content{padding-block:clamp(5rem,12vw,9rem)}.hero-title{font-size:clamp(2.6rem,7.6vw,6.7rem);max-width:74rem;margin-block:clamp(.8rem,2vw,1.2rem)}.hero-text{max-width:58rem}.hero-actions{display:flex;flex-wrap:wrap;gap:clamp(.7rem,2vw,1rem);margin-block:clamp(1.5rem,4vw,2.5rem)}.hero-actions .btn{padding:clamp(.85rem,2vw,1rem) clamp(1rem,3vw,1.5rem)}.hero-facts{display:grid;grid-template-columns:1fr;gap:clamp(.8rem,2vw,1rem)}.hero-facts span,.cake-card,.service-card,.steps-grid article,.proof-grid article,.package-card,.contact-info,.contact-form{background:color-mix(in srgb,var(--surface) 90%,transparent);border:1px solid var(--line);border-radius:clamp(1rem,2.8vw,1.55rem);padding:clamp(1rem,3vw,1.5rem);box-shadow:var(--shadow)}.hero-facts strong{display:block;color:var(--accent-2);font-family:Fraunces,Georgia,serif;font-size:clamp(1.15rem,2.3vw,1.6rem)}.note-strip{display:flex;flex-wrap:wrap;gap:clamp(.6rem,1.8vw,.9rem);margin-top:clamp(1.3rem,3vw,2rem)}.note-strip span{border:1px solid var(--line);border-radius:999rem;padding:clamp(.65rem,1.7vw,.9rem) clamp(.85rem,2vw,1.1rem);background:var(--surface);color:var(--muted);font-weight:850}.card-grid,.image-grid{display:grid;grid-template-columns:1fr;gap:clamp(1rem,3vw,1.25rem);margin-top:clamp(1.5rem,4vw,2.5rem)}.cake-card,.service-card,.package-card{position:relative;overflow:hidden}.cake-card::after,.service-card::after,.package-card::after{content:"";position:absolute;right:clamp(1rem,3vw,1.5rem);top:clamp(1rem,3vw,1.5rem);width:clamp(2rem,6vw,4rem);aspect-ratio:1;border:1px solid color-mix(in srgb,var(--accent) 45%,transparent);border-radius:50%;opacity:.5}.cake-card span,.steps-grid span{font-family:Fraunces,Georgia,serif;color:var(--accent-2);font-size:clamp(1.5rem,3vw,2.25rem);font-weight:800}.cake-card h3,.service-card h3,.steps-grid h3,.proof-grid h3,.package-card h3{font-family:Fraunces,Georgia,serif;font-size:clamp(1.35rem,2.5vw,1.85rem);line-height:1.08}.cake-card p,.service-card p,.steps-grid p,.proof-grid p,.package-card p{color:var(--muted)}.result-line{color:var(--accent-2)!important;font-weight:900}.image-story{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.image-grid img{aspect-ratio:4/3;object-fit:cover;border-radius:clamp(1rem,2.8vw,1.55rem);border:1px solid var(--line);box-shadow:var(--shadow)}.contact-section{display:grid;grid-template-columns:1fr;gap:clamp(1.2rem,4vw,2rem);align-items:start}.contact-details{font-style:normal;color:var(--muted);margin-top:clamp(1rem,3vw,1.5rem)}.contact-details a{color:var(--accent-2);font-weight:900}.contact-form{display:grid;grid-template-columns:1fr;gap:clamp(.9rem,2vw,1.1rem);width:100%}.contact-form label{display:grid;gap:clamp(.35rem,1vw,.5rem);font-weight:900;color:var(--text);min-width:0}.contact-form input,.contact-form textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:clamp(.75rem,2vw,1rem);background:var(--bg);color:var(--text);padding:clamp(.85rem,2vw,1rem);font:inherit;overflow-wrap:break-word}.contact-form textarea{resize:vertical}.check-label{grid-template-columns:auto 1fr!important;align-items:start;color:var(--muted)!important}.check-label input{width:clamp(1rem,3vw,1.2rem);margin-top:.25em}.form-submit{width:100%;padding:clamp(.85rem,2vw,1rem)}.form-status{margin:0;color:var(--danger);font-weight:900}.site-footer{border-top:1px solid var(--line);background:var(--bg-soft);padding-block:clamp(2rem,5vw,3.4rem)}.footer-inner{display:grid;grid-template-columns:1fr;gap:clamp(1rem,3vw,1.8rem);color:var(--muted)}.footer-logo{display:inline-block;font-family:Fraunces,Georgia,serif;font-size:clamp(1.6rem,3vw,2.2rem);font-weight:800;color:var(--text);margin-bottom:clamp(.4rem,1vw,.6rem)}.footer-main p,.footer-copy{margin:0}.footer-nav{display:flex;flex-wrap:wrap;gap:clamp(.65rem,1.8vw,1rem)}.footer-nav a{color:var(--text);font-weight:850;border-bottom:1px solid color-mix(in srgb,var(--accent) 45%,transparent)}.footer-info{display:grid;gap:clamp(.35rem,1vw,.55rem)}.legal-main{padding-block:clamp(3rem,8vw,6rem)}.legal-title{font-size:clamp(2.4rem,6vw,5rem)}.legal-section{border-top:1px solid var(--line);padding-block:clamp(1.5rem,4vw,2.25rem)}.legal-section h2{font-family:Fraunces,Georgia,serif;font-size:clamp(1.5rem,2.8vw,2.1rem)}.legal-section ul{padding-left:clamp(1.1rem,3vw,1.5rem);color:var(--muted)}.cookie-banner{position:fixed;inset:auto clamp(1rem,4vw,2rem) clamp(1rem,4vw,2rem) clamp(1rem,4vw,2rem);z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:clamp(1rem,3vw,1.5rem);padding:clamp(.9rem,2.5vw,1.15rem);box-shadow:var(--shadow);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:clamp(.75rem,2vw,1rem)}.cookie-banner[hidden]{display:none!important}.cookie-banner p{margin:0;flex:1 1 clamp(16rem,52vw,42rem);color:var(--muted)}.cookie-actions{display:flex;align-items:center;justify-content:flex-end;gap:clamp(.5rem,1.4vw,.75rem);flex:0 0 auto}.cookie-actions .btn{min-height:clamp(2.75rem,5vw,3rem);width:auto;padding:clamp(.62rem,1.5vw,.75rem) clamp(.95rem,2.2vw,1.25rem);line-height:1;white-space:nowrap}
@media (max-width:767px){.site-header .hdr-cta{display:none}.desktop-nav{display:none}.container{width:min(100% - clamp(1.5rem,6vw,2.5rem),78rem)}.brand-name{max-width:52vw}.cookie-actions{width:100%;justify-content:flex-start}}
@media (min-width:768px){.site-header .hdr-cta{display:inline-flex}.hero-facts{grid-template-columns:repeat(3,1fr)}.card-grid,.image-grid,.contact-section{grid-template-columns:repeat(2,1fr)}.contact-form{grid-template-columns:repeat(2,1fr)}.contact-form label:nth-child(5),.check-label,.form-submit,.form-status{grid-column:1/-1}.footer-inner{grid-template-columns:repeat(2,1fr)}}
@media (min-width:1023px){.desktop-nav{display:flex}.nav-toggle{display:none}.mobile-drawer{display:none!important}.cake-grid,.service-grid,.proof-grid,.package-grid{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1280px){.container{width:min(100% - clamp(3rem,7vw,6rem),84rem)}}
