@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-italic-400.woff') format('woff');font-style:italic;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-normal-400.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url('assets/cormorant-normal-500.woff') format('woff');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--cream:#fffaf6;--rose:#f5e1e5;--rose-deep:#e9c0ca;--wine:#6c293c;--ink:#39242a;--muted:#765d64;--gold:#9b733a;--line:#e8d8d6;--serif:'Cormorant Garamond',Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 var(--sans);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #9b733a;outline-offset:4px}img{display:block;width:100%;height:100%;object-fit:cover}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}button{border:0}figure{margin:0}[hidden]{display:none!important}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--wine);color:white;padding:12px 20px}.skip-link:focus{top:10px}.announcement{min-height:37px;display:flex;justify-content:space-between;align-items:center;padding:6px max(5vw,24px);background:var(--wine);color:#fff1f3;font-size:.8125rem;letter-spacing:.035em}.site-header{max-width:1512px;margin:auto;padding:20px 5vw 19px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;align-items:center;gap:15px}.brand img{width:64px;height:64px;border-radius:50%;border:1px solid #dcbca1}.brand-name{font:500 36px/1 var(--serif);letter-spacing:-1.4px;color:var(--wine)}.brand-name span{display:block;margin-top:9px;font:500 10px/1.2 var(--sans);letter-spacing:3.1px}.site-header nav{display:flex;align-items:center;gap:29px;font-size:.875rem}.nav-link{position:relative}.nav-link:after,.text-link:after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:currentColor;transform-origin:left;transition:transform .25s;transform:scaleX(0)}.nav-link:hover:after{transform:scaleX(1)}.nav-phone{display:flex;align-items:center;gap:7px;white-space:nowrap}.nav-phone svg{width:17px;height:17px}.button{background:var(--wine);color:#fff8f5;border:1px solid var(--wine);min-height:54px;padding:15px 25px;font-size:.875rem;font-weight:500;letter-spacing:.005em;display:inline-flex;justify-content:center;align-items:center;text-align:center;transition:background .2s,box-shadow .2s,transform .2s;border-radius:3px}.button:hover{background:#512033;box-shadow:0 6px 16px #6c293c16;transform:translateY(-2px)}.button-small{min-height:44px;padding:11px 22px}.button-outline{background:transparent;color:var(--wine)}.button-outline:hover{background:var(--wine);color:white}.hero{max-width:1512px;margin:auto;min-height:690px;padding:52px 5vw 46px;display:grid;grid-template-columns:.88fr 1.12fr;gap:50px;align-items:center}.hero-copy{padding:12px 0 0}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.17em;line-height:1.6;color:var(--wine)}.hero-copy .eyebrow{display:flex;align-items:center;gap:12px}.hero-copy .eyebrow>span{width:25px;height:1px;background:var(--gold);flex-shrink:0}h1{font:400 clamp(54px,5.3vw,82px)/1.04 var(--serif);letter-spacing:-3.4px;margin:29px 0 25px}h1 em,h2 em{font-weight:400;color:var(--wine)}.hero-description{color:var(--muted);max-width:390px;font-size:1rem;line-height:1.85;margin:0 0 28px}.hero-actions{display:flex;flex-wrap:wrap;align-items:center;gap:21px}.text-link{position:relative;background:none;padding:0;font-size:.875rem;color:var(--wine);font-weight:500}.text-link:after{transform:scaleX(1)}.text-link:hover:after{transform:scaleX(.7)}.hero-note{display:flex;align-items:center;gap:9px;font-size:.8125rem;color:var(--muted);margin-top:19px}.hero-note svg{color:var(--wine);width:17px;height:17px;flex-shrink:0}.signature{margin-top:46px;display:flex;align-items:center;gap:17px}.signature>span:first-child{font:italic 23px/1.2 var(--serif);color:var(--wine)}.signature>span:last-child{font-size:.75rem;letter-spacing:.18em;color:var(--gold);border-left:1px solid #c5a985;padding-left:17px}.hero-art{min-width:0}.image-stage{position:relative;margin-left:35px;padding:15px 0 0 23px}.image-stage:before{content:'';position:absolute;inset:0 23px 24px 5px;border:1px solid #cbaeb0;border-radius:160px 160px 8px 8px}.main-photo{position:relative;overflow:hidden;border-radius:145px 145px 5px 5px;aspect-ratio:1.02;height:auto;isolation:isolate;background:var(--rose)}.main-photo>img{object-position:center 47%;transition:opacity .2s,transform .8s}.main-photo:hover>img{transform:scale(1.025)}.main-photo:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#352026a8);pointer-events:none}.main-photo figcaption{position:absolute;z-index:1;bottom:28px;left:32px;right:32px;color:white}.main-photo figcaption>span:first-child{display:block;font-size:.75rem;letter-spacing:.17em;margin-bottom:5px}.main-photo figcaption>span:last-child{font:400 27px/1.2 var(--serif)}.detail-photo{position:absolute;left:-41px;bottom:78px;width:155px;transform:rotate(-7deg);background:#fffdfb;padding:8px 8px 12px;box-shadow:0 8px 28px #492b3324;z-index:2}.detail-photo img{aspect-ratio:1;object-position:50% 45%}.detail-photo figcaption{text-align:center;font:italic 15px/1.3 var(--serif);padding:9px 0 0;color:var(--wine)}.photo-index{position:absolute;right:0;top:-13px;color:var(--gold);font-size:.75rem;letter-spacing:.15em}.cake-choices{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;padding:27px 0 0 58px}.cake-choice{padding:0 0 13px;display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:none;position:relative;font-size:.8125rem;color:var(--muted);text-align:left;transition:color .2s}.choice-number{font-size:.75rem;color:#9b7e84;letter-spacing:.05em}.choice-line{position:absolute;bottom:0;height:1px;left:0;right:0;background:#dfcccb}.cake-choice.active{color:var(--wine)}.cake-choice.active .choice-line{height:2px;background:var(--wine)}.cake-choice:hover{color:var(--wine)}.sweet-strip{display:flex;justify-content:center;align-items:center;gap:45px;background:var(--rose);padding:23px 24px;color:var(--wine);font:400 24px/1.25 var(--serif);border-top:1px solid #ead1d7;border-bottom:1px solid #ead1d7}.sweet-strip i{font-style:normal;font-size:17px;color:var(--gold)}.invitation{max-width:1512px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:49px 5vw 53px}.invitation h2{font:400 38px/1.15 var(--serif);letter-spacing:-.9px;margin:10px 0 12px}.invitation p{margin:0;color:var(--muted);max-width:610px;font-size:.9375rem}.invitation .button{flex-shrink:0}footer{background:#f6eeeb;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:25px;padding:30px max(5vw,24px);font-size:.8125rem;color:var(--muted)}.footer-brand{font:italic 24px/1.2 var(--serif);color:var(--wine)}footer div{display:flex;gap:22px}footer a:hover{text-decoration:underline}dialog{padding:0;border:0;border-radius:8px;max-width:min(1040px,calc(100vw - 40px));width:1040px;max-height:calc(100dvh - 40px);color:var(--ink);background:var(--cream);box-shadow:0 30px 110px #26141c66}dialog::backdrop{background:#24151dc7;backdrop-filter:blur(6px)}.order-layout{display:grid;grid-template-columns:310px 1fr;min-height:630px}.order-story{background:#f0d6dd;display:flex;flex-direction:column;justify-content:space-between;padding:37px 31px;color:var(--wine);position:relative}.form-brand{font:500 36px/1 var(--serif);letter-spacing:-1.2px}.form-brand span{display:block;font:500 10px/1.2 var(--sans);letter-spacing:.25em;margin-top:9px}.order-story .eyebrow{font-size:.75rem;letter-spacing:.13em}.order-story h2{font:400 49px/1.04 var(--serif);letter-spacing:-1.8px;margin:17px 0 22px}.order-story p{font-size:.875rem;line-height:1.8;color:#79565f}.collection-note{font-size:.75rem;border-top:1px solid #c999a8;padding-top:17px}.order-content{padding:35px 38px 30px;position:relative}.close-button{position:absolute;right:16px;top:16px;display:grid;place-items:center;background:transparent;width:37px;height:37px;border:1px solid var(--line);border-radius:50%;transition:background .2s}.close-button:hover{background:var(--rose)}.form-progress{display:flex;align-items:center;gap:14px;margin:2px 40px 31px 0;font-size:.75rem;color:#98848a}.form-progress>span:not(.progress-line){display:flex;align-items:center;gap:7px;white-space:nowrap}.form-progress .current{color:var(--wine);font-weight:600}.progress-line{width:48px;height:1px;background:#dac6cc}.order-content h2{font:400 38px/1.15 var(--serif);letter-spacing:-.8px;margin:9px 0 10px}.form-intro{font-size:.875rem;line-height:1.7;color:var(--muted);margin:0 0 23px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 18px}label{display:flex;flex-direction:column;gap:7px;font-size:.875rem;font-weight:500;position:relative}.optional{font-weight:400;color:var(--muted);display:contents}.full-field{margin:17px 0 0}input,select,textarea{width:100%;background:#fffdfb;border:1px solid #d9c9c9;border-radius:3px;padding:11px 12px;font-size:.875rem;line-height:1.55;color:var(--ink);min-height:45px}textarea{resize:vertical;min-height:100px}input::placeholder,textarea::placeholder{color:#99858a;font-size:.8125rem}input:focus,select:focus,textarea:focus{border-color:var(--wine)}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:24px}.form-bottom>span{font-size:.75rem;color:var(--muted);max-width:130px}.form-bottom .button{padding:13px 18px;min-height:47px;font-size:.8125rem}.back-button{background:none;font-size:.8125rem;padding:10px 0;text-decoration:underline;text-underline-offset:4px}.order-summary{background:#f7e9ed;border-left:2px solid #b77b8e;padding:17px 20px;margin-top:25px}.order-summary>span{font-size:.75rem;letter-spacing:.14em;color:var(--wine)}.order-summary p{margin:5px 0;font:400 24px/1.3 var(--serif)}.order-summary small{font-size:.75rem;color:var(--muted)}.mail-explanation{font-size:.8125rem;color:var(--muted);margin:20px 0 0}.ready-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin:27px 0}#mail-ready p{font-size:.9375rem;color:var(--muted)}#mail-ready h2{font-size:45px;margin-top:15px}#mail-ready strong{font-weight:500;overflow-wrap:anywhere}#copy-status{min-height:24px}#copy-fallback{min-height:160px}.hero-copy{animation:appear .8s ease both}.hero-art{animation:appear 1s .1s ease both}@keyframes appear{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1500px){.hero{padding-top:60px;padding-bottom:58px}.main-photo{aspect-ratio:1.02}.image-stage{margin-left:47px}.hero{gap:60px}}
@media(max-width:1100px){.site-header nav{gap:20px}.instagram-nav{display:none}.hero{gap:28px;padding-top:45px;padding-bottom:40px}h1{font-size:65px;letter-spacing:-2.8px}.hero-description{max-width:350px}.image-stage{margin-left:21px;padding-left:17px}.main-photo{aspect-ratio:.85;border-radius:130px 130px 5px 5px}.detail-photo{left:-26px;width:125px;bottom:70px}.cake-choices{padding-left:38px;gap:10px}.cake-choice{font-size:.75rem}.signature{margin-top:33px}.sweet-strip{gap:27px;font-size:22px}.hero-actions{gap:17px}.hero-actions .button{padding:15px 20px}.order-layout{grid-template-columns:270px 1fr}.order-story{padding:34px 26px}.order-content{padding:35px 30px 30px}.order-story h2{font-size:45px}}
@media(max-width:850px){.nav-phone span{display:none}.site-header nav{gap:18px}.brand img{width:57px;height:57px}.brand-name{font-size:32px}.hero{gap:23px}h1{font-size:55px;letter-spacing:-2.2px}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.12em;gap:9px}.hero-copy .eyebrow>span{width:18px}.hero-description{font-size:.9375rem}.hero-actions{align-items:flex-start;flex-direction:column;gap:16px}.hero-note{font-size:.75rem;align-items:flex-start}.signature{gap:12px}.signature>span:first-child{font-size:20px}.signature>span:last-child{padding-left:12px;font-size:.75rem}.main-photo{aspect-ratio:.7;border-radius:110px 110px 5px 5px}.main-photo figcaption{left:22px;bottom:21px;right:20px}.main-photo figcaption>span:last-child{font-size:23px}.detail-photo{width:110px;bottom:100px;left:-18px}.cake-choices{padding-left:28px;gap:12px}.cake-choice{gap:5px;flex-direction:column;align-items:flex-start}.sweet-strip{gap:20px;font-size:20px}.sweet-strip>span:last-child,.sweet-strip>i:last-of-type{display:none}.invitation h2{font-size:32px}.invitation .button{max-width:180px}.order-layout{grid-template-columns:1fr}.order-story{display:none}.order-content{padding:35px 38px 30px}.order-layout{min-height:0}footer{flex-wrap:wrap}.footer-brand{width:100%}}
@media(max-width:600px){.announcement{justify-content:center;padding:8px 16px;font-size:.75rem;min-height:33px}.announcement>span:first-child{display:none}.site-header{padding:14px 20px;gap:12px}.brand{gap:9px}.brand img{width:48px;height:48px}.brand-name{font-size:28px;letter-spacing:-1px}.brand-name span{font-size:8px;letter-spacing:2.1px;margin-top:7px}.site-header nav{gap:10px}.nav-link{display:none}.nav-phone{width:36px;height:36px;justify-content:center;border:1px solid var(--line);border-radius:50%}.button-small{min-height:40px;padding:9px 13px;font-size:.75rem}.hero{display:flex;flex-direction:column;padding:33px 23px 32px;gap:29px;min-height:0;align-items:stretch}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.125em}.hero-copy .eyebrow>span{width:21px}h1{font-size:clamp(48px,11.8vw,65px);letter-spacing:-2.2px;line-height:1.05;margin:23px 0 19px}.desktop-break{display:none}.hero-description{font-size:.9375rem;line-height:1.8;max-width:410px;margin-bottom:23px}.hero-actions{flex-direction:row;align-items:center;gap:19px;flex-wrap:wrap}.hero-actions .button{font-size:.8125rem;min-height:49px;padding:13px 17px}.hero-actions .text-link{font-size:.8125rem}.hero-note{font-size:.75rem;margin-top:17px}.signature{display:none}.hero-art{margin-top:4px}.image-stage{margin-left:23px;padding:11px 0 0 15px}.image-stage:before{inset:0 18px 20px 1px;border-radius:110px 110px 5px 5px}.main-photo{aspect-ratio:1.02;border-radius:110px 110px 4px 4px}.main-photo figcaption{bottom:21px;left:25px}.main-photo figcaption>span:first-child{font-size:.75rem}.main-photo figcaption>span:last-child{font-size:25px}.detail-photo{width:112px;left:-31px;bottom:83px;padding:6px 6px 10px}.detail-photo figcaption{font-size:13px;padding-top:7px}.photo-index{font-size:.75rem;top:-11px}.cake-choices{padding:23px 0 0 38px;gap:15px}.cake-choice{font-size:.75rem;flex-direction:row;gap:6px;padding-bottom:11px}.choice-number{font-size:.75rem}.sweet-strip{gap:14px;padding:18px 15px;font-size:20px}.sweet-strip i{font-size:12px}.invitation{padding:34px 23px 37px;align-items:flex-start;flex-direction:column;gap:22px}.invitation .eyebrow{font-size:.75rem}.invitation h2{font-size:33px;margin:8px 0 12px}.invitation p{font-size:.875rem}.invitation .button{max-width:none;min-height:47px;font-size:.8125rem}footer{padding:28px 23px;gap:18px;font-size:.75rem;align-items:flex-start}footer div{flex-direction:column;gap:7px}.footer-brand{font-size:23px}dialog{max-width:100vw;width:100%;max-height:100dvh;margin:auto 0 0;border-radius:12px 12px 0 0}.order-content{padding:33px 22px 30px}.order-content h2{font-size:35px}.form-progress{margin-bottom:26px}.order-content .eyebrow{font-size:.75rem}.form-intro{font-size:.8125rem}.field-grid{gap:15px 12px}input,select,textarea{font-size:1rem;padding:10px;min-width:0}label{font-size:.875rem}.optional{font-size:.75rem}.full-field{margin-top:16px}.form-bottom{gap:15px;align-items:flex-end}.form-bottom>span{max-width:95px;font-size:.75rem}.form-bottom .button{font-size:.75rem;padding:12px 14px}.order-summary{padding:15px}.order-summary p{font-size:23px}.mail-explanation{font-size:.75rem}#mail-ready h2{font-size:39px}#mail-ready p{font-size:.875rem}.close-button{right:14px;top:15px;width:33px;height:33px}}
@media(max-width:370px){.site-header{padding:12px 16px}.brand img{width:42px;height:42px}.brand-name{font-size:25px}.nav-phone{display:none}.hero{padding-left:19px;padding-right:19px}h1{font-size:47px}.hero-actions{gap:15px}.sweet-strip{font-size:18px;gap:11px}.cake-choice{flex-direction:column;align-items:flex-start;gap:2px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.button:hover,.main-photo:hover>img{transform:none}}

/* Readable copy and comfortable touch targets across viewport sizes. */
.hero-description,.invitation p,.form-intro{font-size:1rem}.cake-choice{font-size:.875rem;min-height:44px}.form-progress,label{font-size:.875rem}.brand-name span,.form-brand span{letter-spacing:.2em}.optional{font-size:.75rem}

/* Stage two: a confectionery collection with generous editorial spacing. */
.section-shell{max-width:1512px;margin:auto;padding:86px 5vw}.section-heading{display:grid;grid-template-columns:1.15fr 1fr;align-items:end;gap:70px;margin-bottom:38px}.section-heading h2,.studio h2,.questions h2{font:400 clamp(42px,4.1vw,62px)/1.06 var(--serif);letter-spacing:-1.6px;margin:14px 0 0}.section-heading p{max-width:455px;margin:0 0 5px;color:var(--muted);line-height:1.85}.collection-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);margin-bottom:30px;padding-bottom:18px}.collection-filters{display:flex;gap:8px;flex-wrap:wrap}.collection-filters button{background:transparent;min-height:44px;padding:9px 17px;border:1px solid transparent;border-radius:30px;font-size:.875rem;color:var(--muted)}.collection-filters button:hover{background:#f7ebeb;color:var(--wine)}.collection-filters button.selected{background:var(--wine);color:var(--cream)}.collection-count{font-size:.8125rem;color:var(--muted);white-space:nowrap}.collection-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 22px}.cake-card{display:block;width:100%;min-width:0;padding:0;background:transparent;text-align:left;border-radius:5px}.cake-card-featured,.cake-card-wide{grid-column:span 2}.card-photo{position:relative;display:block;overflow:hidden;aspect-ratio:.8;background:var(--rose);border-radius:5px}.cake-card-featured .card-photo,.cake-card-wide .card-photo{aspect-ratio:1.66}.card-photo img{object-position:50% 30%;transition:transform .65s ease}.cake-card[data-preview="2"] img{object-position:50% 10%}.cake-card[data-preview="3"] img{object-position:50% 48%}.cake-card[data-preview="4"] img{object-position:50% 55%}.cake-card:hover img{transform:scale(1.035)}.card-open{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;background:#fffaf6f0;padding:8px 14px;color:var(--wine);border-radius:30px;font-size:.8125rem;opacity:0;transform:translateY(6px);transition:opacity .2s,transform .2s}.cake-card:hover .card-open,.cake-card:focus-visible .card-open{opacity:1;transform:none}.card-caption{display:flex;justify-content:space-between;align-items:center;gap:14px;padding-top:16px}.card-caption small{display:block;font-size:.75rem;letter-spacing:.12em;color:var(--muted);margin-bottom:4px}.card-caption strong{font:400 29px/1.2 var(--serif);color:var(--wine)}.card-plus{width:36px;height:36px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;flex-shrink:0;color:var(--wine);font:400 24px/1 var(--serif);transition:background .2s}.cake-card:hover .card-plus{background:var(--rose)}.collection-grid.filtered{grid-template-columns:repeat(3,minmax(0,1fr))}.collection-grid.filtered .cake-card{grid-column:auto}.collection-grid.filtered .card-photo{aspect-ratio:1}.collection-grid.filtered[data-active-filter="Cupcakes"],.collection-grid.filtered[data-active-filter="Personlige cookies"]{grid-template-columns:minmax(0,650px);justify-content:center}.collection-note-row{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:28px}.collection-note-row p{font-size:.8125rem;color:var(--muted);margin:0}.collection-note-row a{flex-shrink:0}.studio{background:#f2dce2;border-top:1px solid #e9cad2;border-bottom:1px solid #e9cad2}.studio-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:center;padding-top:72px;padding-bottom:72px}.studio-seal{position:relative;min-height:355px;border:1px solid #bc8b914f;border-radius:200px 200px 4px 4px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:42px 25px;gap:25px;background:#f8e9ed55}.studio-seal .eyebrow{font-size:.75rem;letter-spacing:.13em}.studio-seal img{width:155px;height:155px;object-fit:contain;border-radius:50%;box-shadow:0 7px 25px #934b5d0d}.seal-signature{font:italic 27px/1.2 var(--serif);color:var(--wine)}.studio-copy{max-width:580px}.studio-copy p{color:#6e4f59;line-height:1.9;margin:24px 0 0}.studio-copy .text-link{display:inline-block;margin-top:26px}.process-grid{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;padding:0;margin:45px 0 0}.process-grid li{border-top:1px solid #d5b8bf;padding-top:23px}.step-number{font:italic 37px/1 var(--serif);color:var(--gold)}.process-grid h3{font:500 29px/1.18 var(--serif);margin:20px 0 13px;color:var(--wine)}.process-grid p{color:var(--muted);margin:0;line-height:1.85}.questions{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding-top:12px;padding-bottom:88px}.questions>div:first-child>p{color:var(--muted);margin-top:25px}.questions a{text-decoration:underline;text-underline-offset:5px;color:var(--wine)}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{display:flex;justify-content:space-between;align-items:center;gap:22px;padding:22px 0;cursor:pointer;font-size:1rem;list-style:none;line-height:1.5;color:var(--wine)}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:24px;font-weight:300;line-height:1;flex-shrink:0;transition:transform .2s}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list p{color:var(--muted);margin:0 30px 24px 0;line-height:1.85}.final-invitation{max-width:none;padding:58px 24px 66px;background:var(--wine);color:var(--cream);display:flex;flex-direction:column;text-align:center;gap:0;position:relative}.final-invitation .eyebrow{color:#f4d7df;margin-top:16px}.invitation-ornament{color:#dbc29b;font:400 31px/1 var(--serif)}.final-invitation h2{font-size:clamp(50px,5.5vw,76px);line-height:1.02;letter-spacing:-1.7px;margin:18px 0 22px}.final-invitation h2 em{color:#f1c5d0}.final-invitation p{color:#f0dbe1;max-width:480px;line-height:1.85}.final-invitation .button{margin-top:28px;background:var(--cream);color:var(--wine);border-color:var(--cream);max-width:none}.final-invitation .button:hover{background:var(--rose)}.invitation-small{font-size:.8125rem;color:#e9c9d3;margin-top:18px}.preview-layout{display:grid;grid-template-columns:1fr 1fr}.preview-photo{background:var(--rose);min-height:520px}.preview-photo img{object-fit:contain;max-height:calc(100dvh - 40px)}.preview-copy{padding:75px 40px 40px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;position:relative}.preview-copy h2{font:400 48px/1.06 var(--serif);letter-spacing:-1px;color:var(--wine);margin:16px 0 20px}.preview-copy p{line-height:1.85;color:var(--muted);margin:0 0 22px}.preview-copy .preview-note{border-top:1px solid var(--line);padding-top:20px;font-size:.875rem}.preview-pickup{color:var(--muted);font-size:.8125rem;margin-top:17px}
@media(max-width:1100px){.site-header nav{gap:17px}.section-heading{gap:45px}.collection-grid{gap:25px 17px}.card-caption strong{font-size:26px}.process-grid{gap:28px}.studio-inner,.questions{gap:6vw}.studio h2{font-size:49px}.preview-copy{padding:60px 30px 30px}.preview-copy h2{font-size:43px}}
@media(max-width:850px){.site-header .nav-link{display:none}.section-shell{padding-top:62px;padding-bottom:62px}.section-heading{gap:30px}.section-heading h2,.studio h2,.questions h2{font-size:46px}.collection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cake-card-featured{grid-column:span 2}.cake-card-wide{grid-column:auto}.card-photo,.cake-card-wide .card-photo{aspect-ratio:1}.cake-card-featured .card-photo{aspect-ratio:1.5}.collection-grid.filtered{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-count{display:none}.collection-note-row{align-items:flex-start;flex-direction:column;gap:15px}.studio-seal{min-height:315px;padding:32px 18px}.studio-seal .eyebrow{font-size:.75rem;letter-spacing:.09em}.studio-seal img{width:130px;height:130px}.seal-signature{font-size:24px}.studio-inner{gap:35px;grid-template-columns:.75fr 1.25fr}.process-grid{gap:22px}.process-grid h3{font-size:26px}.questions{padding-top:8px}.preview-photo{min-height:460px}.preview-copy{padding:60px 25px 30px}.preview-copy h2{font-size:36px}.preview-copy .button{padding:13px 16px}.final-invitation{padding-top:50px;padding-bottom:54px;align-items:center}}
@media(max-width:600px){.section-shell{padding:48px 23px}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:27px}.section-heading h2,.studio h2,.questions h2{font-size:43px;letter-spacing:-1.3px}.section-heading p{font-size:1rem;max-width:none}.collection-toolbar{margin-bottom:23px;padding-bottom:17px}.collection-filters{gap:4px}.collection-filters button{padding:8px 12px;font-size:.875rem}.collection-grid,.collection-grid.filtered{grid-template-columns:1fr;gap:27px}.cake-card-featured,.cake-card-wide{grid-column:auto}.card-photo,.cake-card-featured .card-photo,.cake-card-wide .card-photo,.collection-grid.filtered .card-photo{aspect-ratio:1.1}.card-caption{padding-top:13px}.card-caption strong{font-size:29px}.card-open{opacity:1;transform:none;right:13px;bottom:13px}.collection-note-row{margin-top:26px}.collection-note-row a{font-size:.875rem;flex-shrink:1}.studio-inner{grid-template-columns:1fr;gap:35px}.studio-seal{min-height:285px;max-width:330px;width:100%;margin:auto}.studio-seal img{width:135px;height:135px}.studio-seal .eyebrow{font-size:.75rem;letter-spacing:.13em}.studio-copy p{margin-top:20px}.process-grid{grid-template-columns:1fr;gap:27px;margin-top:28px}.process-grid li{display:grid;grid-template-columns:43px 1fr;column-gap:18px;padding-top:23px}.step-number{grid-row:span 2;font-size:33px;margin-top:3px}.process-grid h3{margin:0 0 11px;font-size:29px}.process-grid p{grid-column:2}.questions{grid-template-columns:1fr;gap:20px;padding-top:6px}.questions>div:first-child>p{margin-top:20px}.faq-list summary{padding:20px 0}.faq-list p{margin-right:0}.final-invitation{padding:46px 23px 48px;gap:0}.final-invitation h2{font-size:57px;margin:18px 0 22px}.final-invitation .button{font-size:.875rem;min-height:52px}.invitation-small{max-width:260px}.preview-layout{grid-template-columns:1fr}.preview-photo{min-height:0;height:42dvh}.preview-photo img{max-height:none;object-fit:contain}.preview-copy{padding:30px 23px 33px}.preview-copy h2{font-size:38px;margin-top:10px}.preview-copy .close-button{position:fixed;top:14px;right:14px;background:var(--cream);z-index:2;width:40px;height:40px}.preview-copy p{margin-bottom:18px}.preview-copy .button{width:100%;min-height:50px;font-size:.875rem}.preview-pickup{align-self:center}.preview-copy .preview-note{padding-top:15px}.studio-copy .text-link{font-size:.875rem}}
/* Keep the three main cake portraits generous, without cutting off their decoration. */
@media(min-width:851px){.collection-grid:not(.filtered){grid-template-columns:repeat(6,minmax(0,1fr))}.collection-grid:not(.filtered) .cake-card{grid-column:span 2}.collection-grid:not(.filtered) .cake-card-wide{grid-column:span 3}.collection-grid:not(.filtered) .card-photo{aspect-ratio:.82}.collection-grid:not(.filtered) .cake-card-wide .card-photo{aspect-ratio:1.16}}

/* Kager & søde sager: an editorial product page in the established brand. */
.menu-toggle{display:none;width:42px;height:42px;padding:8px;background:transparent;border:1px solid var(--line);border-radius:3px;place-items:center}.mobile-menu{display:none}.nav-link[aria-current="page"]{color:var(--wine);font-weight:600}.nav-link[aria-current="page"]:after{transform:scaleX(1)}.collection-browse{display:flex;justify-content:center;margin-top:34px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:.8125rem;color:var(--muted);margin-bottom:36px}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.sweets-intro{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:7vw;padding-top:46px;padding-bottom:55px}.sweets-intro h1{font-size:clamp(58px,5.9vw,86px);line-height:1.01;margin:21px 0 24px;letter-spacing:-2.8px}.sweets-intro-copy>p{max-width:455px;color:var(--muted);line-height:1.85;margin:0 0 26px}.sweets-intro-note{display:block;font-size:.8125rem;color:var(--muted);margin-top:22px}.sweets-cover{position:relative;border:1px solid #c8a9ad;padding:12px 12px 0;border-radius:200px 200px 5px 5px;margin-left:5px}.sweets-cover img{height:auto;aspect-ratio:.8;object-position:50% 25%;border-radius:190px 190px 4px 4px}.sweets-cover figcaption{text-align:center;font:italic 24px/1.3 var(--serif);color:var(--wine);padding:17px 10px 20px}.category-nav{display:flex;justify-content:center;gap:6vw;align-items:center;background:var(--rose);border-top:1px solid #ead1d7;border-bottom:1px solid #ead1d7;padding:20px 24px}.category-nav a{display:flex;align-items:center;gap:14px;font:400 27px/1.25 var(--serif);color:var(--wine);min-height:44px}.category-nav a:hover{text-decoration:underline;text-underline-offset:6px}.category-nav a>span{font:400 .75rem/1 var(--sans);color:var(--gold);letter-spacing:.1em}.special-cakes{padding-top:75px;padding-bottom:75px}.special-portraits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.product-photo{position:relative;display:block;width:100%;min-width:0;padding:0;overflow:hidden;aspect-ratio:.82;background:var(--rose);border-radius:4px;text-align:left}.product-photo img{object-position:center 35%;transition:transform .65s ease}.product-photo[data-preview="2"] img{object-position:center 20%}.product-photo:hover img{transform:scale(1.025)}.product-photo:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#32212bc9);pointer-events:none}.product-photo-label{position:absolute;bottom:23px;left:25px;right:23px;display:flex;justify-content:space-between;align-items:center;gap:14px;z-index:1;color:#fffaf6;font:400 29px/1.15 var(--serif)}.product-photo-label>span{display:grid;place-items:center;width:33px;height:33px;flex-shrink:0;border:1px solid #fffaf68a;border-radius:50%;font:400 23px/1 var(--serif)}.special-details{display:grid;grid-template-columns:1fr 1fr;gap:7vw;margin-top:43px;align-items:start}.special-details h3{font:400 35px/1.15 var(--serif);letter-spacing:-.5px;color:var(--wine);margin:12px 0 17px}.special-details p{color:var(--muted);line-height:1.85;margin:0;max-width:490px}.occasion-list{display:flex;flex-wrap:wrap;gap:10px 9px;list-style:none;margin:23px 0 0;padding:0}.occasion-list li{font-size:.875rem;border:1px solid var(--line);border-radius:30px;padding:7px 14px}.quote-card{background:#f6e9e9;padding:29px 33px;border-top:2px solid #c697a3}.quote-card h3{font-size:42px;margin:12px 0 17px}.quote-card h3 em{font-weight:400;color:var(--wine)}.quote-card .button{margin-top:24px}.small-sweets-inner{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding-top:70px;padding-bottom:70px}.cupcakes-section{background:#f2dce2;border-top:1px solid #e9cad2;border-bottom:1px solid #e9cad2}.small-sweets .product-photo{max-width:510px;aspect-ratio:.88;box-shadow:0 8px 35px #593d440d}.small-sweets .product-photo img{object-position:center 55%}.cookies-section .product-photo{justify-self:end}.product-copy h2{font:400 clamp(43px,4.1vw,61px)/1.07 var(--serif);letter-spacing:-1.5px;margin:16px 0 25px}.product-copy>p{color:var(--muted);line-height:1.85;max-width:480px;margin:0 0 28px}.product-detail{border-top:1px solid #c6a4ae75;padding:17px 0;max-width:490px}.product-detail>span{font-size:.875rem;font-weight:500;color:var(--wine)}.product-detail p{font-size:1rem;color:var(--muted);line-height:1.75;margin:7px 0 0}.product-copy .button{margin-top:13px}.sweet-table{border-top:1px solid var(--line);display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:62px;padding-bottom:67px}.sweet-table h2{font:400 58px/1.06 var(--serif);letter-spacing:-1.4px;margin:17px 0 22px}.sweet-table p{color:var(--muted);max-width:570px;line-height:1.85;margin:0 0 28px}.design-note{display:block;color:var(--muted);font-size:.8125rem;margin-top:23px}footer{flex-wrap:wrap}footer>div{flex-wrap:wrap}
@media(max-width:1100px){.sweets-intro{gap:5vw}.sweets-intro h1{font-size:68px}.special-portraits{gap:18px}.product-photo-label{left:18px;right:18px;bottom:20px;font-size:26px}.special-details{gap:40px}.small-sweets-inner{gap:6vw}.quote-card{padding:26px}.product-copy h2{font-size:49px}.category-nav{gap:5vw}}
@media(max-width:850px){.menu-toggle{display:grid}.site-header .nav-phone{display:none}.mobile-menu:not([hidden]){display:flex;flex-direction:column;background:#faeef1;border-bottom:1px solid var(--line);padding:13px 5vw 18px;gap:0}.mobile-menu a{padding:10px 0;font-size:1rem;color:var(--wine)}.mobile-menu a[aria-current="page"]{font-weight:600}.sweets-intro{gap:30px;padding-top:32px;padding-bottom:42px}.sweets-intro h1{font-size:58px;letter-spacing:-1.8px}.breadcrumbs{margin-bottom:27px}.sweets-intro-note{max-width:280px}.sweets-cover{padding:9px 9px 0;border-radius:135px 135px 4px 4px}.sweets-cover img{border-radius:127px 127px 3px 3px}.sweets-cover figcaption{font-size:21px;padding:14px 5px 16px}.category-nav{gap:30px;padding:14px 20px}.category-nav a{font-size:23px;gap:8px}.special-cakes{padding-top:57px;padding-bottom:57px}.special-portraits{gap:15px}.product-photo-label{font-size:24px;left:14px;right:14px;bottom:16px}.product-photo-label>span{width:28px;height:28px}.special-details{gap:25px;margin-top:30px}.special-details h3{font-size:30px}.quote-card h3{font-size:37px}.quote-card{padding:24px}.quote-card .button{padding:13px 17px}.small-sweets-inner{gap:35px;padding-top:55px;padding-bottom:55px}.product-copy h2{font-size:43px}.sweet-table h2{font-size:50px}}
@media(max-width:600px){.site-header nav{gap:8px}.menu-toggle{width:38px;height:40px}.mobile-menu:not([hidden]){padding-left:23px;padding-right:23px}.sweets-intro{grid-template-columns:1fr;gap:32px;padding-top:27px;padding-bottom:37px}.breadcrumbs{margin-bottom:27px}.sweets-intro h1{font-size:clamp(53px,12.7vw,72px);letter-spacing:-1.8px;margin:18px 0 22px}.sweets-intro-note{max-width:none;line-height:1.8}.sweets-intro .hero-actions{gap:20px}.sweets-cover{max-width:400px;width:100%;margin:0 auto}.sweets-cover img{aspect-ratio:.92;object-position:center 15%}.category-nav{gap:9px;padding:13px 16px;justify-content:space-between;align-items:stretch}.category-nav a{flex-direction:column;align-items:flex-start;justify-content:center;gap:6px;font-size:21px}.category-nav a>span{font-size:.75rem}.special-portraits{grid-template-columns:1fr;gap:19px}.product-photo{aspect-ratio:.95}.product-photo-label{font-size:29px;left:22px;right:22px;bottom:22px}.product-photo-label>span{width:33px;height:33px}.special-details{grid-template-columns:1fr;gap:29px;margin-top:27px}.special-details h3{font-size:33px;margin-top:7px}.occasion-list{gap:8px}.occasion-list li{padding:6px 12px}.quote-card{padding:27px 24px}.quote-card h3{font-size:41px}.quote-card .button{width:100%;font-size:.875rem}.small-sweets-inner{grid-template-columns:1fr;gap:30px;padding-top:43px;padding-bottom:46px}.small-sweets .product-photo{max-width:none;aspect-ratio:.92;grid-row:1}.small-sweets .product-copy{grid-row:2}.product-copy h2{font-size:45px;letter-spacing:-1.2px;margin:13px 0 23px}.product-copy .button{width:100%;margin-top:13px}.sweet-table{padding-top:46px;padding-bottom:48px}.sweet-table h2{font-size:46px}.design-note{font-size:.8125rem;max-width:290px}.collection-browse{margin-top:29px}.collection-browse .button{width:100%}.sweets-page .final-invitation h2{font-size:51px}}
@media(max-width:370px){.category-nav a{font-size:19px}.category-nav{gap:8px}.sweets-intro h1{font-size:51px}.site-header nav{gap:6px}.menu-toggle{width:35px}.product-copy h2{font-size:41px}.sweets-page .final-invitation h2{font-size:47px}}
@media(prefers-reduced-motion:reduce){.product-photo:hover img{transform:none}}

/* About Hawra and contact: a personal introduction and a clear way to enquire. */
.about-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:7vw;align-items:center;padding-top:44px;padding-bottom:65px}.about-intro h1{font-size:clamp(58px,5.7vw,83px);line-height:1.04;letter-spacing:-2.6px;margin:23px 0 25px}.about-intro-copy>p{max-width:460px;color:var(--muted);line-height:1.9;margin:0 0 27px}.about-brand-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:510px;padding:48px 27px 35px;background:#f9d2d9;border:1px solid #cfa898;border-radius:210px 210px 5px 5px;gap:26px;text-align:center}.about-brand-card>.eyebrow{font-size:.75rem;letter-spacing:.12em}.about-brand-card img{width:min(330px,100%);height:auto;aspect-ratio:1;border-radius:5px;object-fit:contain}.about-brand-card figcaption>span{display:block;color:var(--wine);font:italic 28px/1.25 var(--serif)}.about-brand-card figcaption>small{display:block;color:var(--gold);font-size:.75rem;letter-spacing:.16em;margin-top:10px}.about-story{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;border-top:1px solid var(--line);padding-top:63px;padding-bottom:67px}.about-story h2,.about-details h2,.pickup-section h2,.contact-help h2{font:400 clamp(43px,4.1vw,61px)/1.08 var(--serif);letter-spacing:-1.5px;margin:15px 0 0}.about-story-copy p{color:var(--muted);line-height:1.9;margin:0 0 22px;max-width:610px}.about-story-copy p:last-child{margin-bottom:0}.about-details{background:#f4e2e6;border-top:1px solid #e9d2d9;border-bottom:1px solid #e9d2d9}.about-details>.section-shell{padding-top:65px;padding-bottom:65px}.about-details-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8vw;align-items:center;margin-top:40px}.about-details-grid figure{position:relative;overflow:hidden;border-radius:5px;aspect-ratio:.87;background:var(--rose)}.about-details-grid figure img{object-position:center 50%}.about-details-grid figure:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#32212bc9)}.about-details-grid figcaption{position:absolute;bottom:25px;left:28px;right:28px;z-index:1;color:var(--cream);font:italic 31px/1.2 var(--serif)}.about-detail-copy>div{border-top:1px solid #c6a4ae75;padding-top:20px;margin-bottom:25px}.about-detail-copy h3{font:400 31px/1.18 var(--serif);color:var(--wine);margin:9px 0 12px}.about-detail-copy p{color:var(--muted);line-height:1.85;margin:0;max-width:560px}.about-detail-copy .text-link{display:inline-block;margin-top:5px}.contact-intro{padding-top:36px;padding-bottom:66px}.contact-intro .breadcrumbs{margin-bottom:33px}.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:8vw;align-items:start}.contact-copy h1{font-size:clamp(56px,5.3vw,78px);line-height:1.06;letter-spacing:-2.3px;margin:21px 0 24px}.contact-copy>p{max-width:440px;line-height:1.85;color:var(--muted);margin:0 0 25px}.contact-phone-card{position:relative;display:flex;flex-direction:column;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:21px 55px 22px 0;max-width:475px}.contact-card-label{font-size:.75rem;letter-spacing:.13em;color:var(--muted)}.contact-phone-card strong{font:400 39px/1.3 var(--serif);color:var(--wine);margin:4px 0}.contact-phone-card>span:last-of-type{font-size:.875rem;color:var(--muted)}.contact-phone-card svg{position:absolute;right:0;top:43px;width:43px;height:43px;border:1px solid var(--line);padding:11px;border-radius:50%;color:var(--wine);transition:background .2s}.contact-phone-card:hover svg{background:var(--rose)}.contact-socials{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:24px;font-size:.875rem}.contact-socials>span{width:100%;color:var(--muted);font-size:.8125rem}.contact-socials a{color:var(--wine);text-decoration:underline;text-underline-offset:5px}.contact-order-card{border:1px solid var(--line);background:#f9edef;border-radius:5px;overflow:hidden}.contact-order-image{height:151px;background:var(--rose)}.contact-order-image img{object-position:center 40%}.contact-order-content{padding:29px 33px 26px}.contact-order-content h2{font:400 40px/1.1 var(--serif);letter-spacing:-.7px;color:var(--wine);margin:12px 0 15px}.contact-order-content>p{color:var(--muted);line-height:1.8;margin:0}.request-checklist{list-style:none;padding:0;margin:22px 0 25px;display:grid;gap:9px}.request-checklist li{display:flex;gap:13px;align-items:center;font-size:.875rem}.request-checklist li span{color:var(--gold);font-size:.75rem;letter-spacing:.05em}.contact-order-content .button{width:100%}.contact-request-note{display:block;color:var(--muted);font-size:.8125rem;text-align:center;margin-top:12px}.pickup-section{background:var(--wine);color:var(--cream)}.pickup-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center;padding-top:62px;padding-bottom:62px}.pickup-section .eyebrow{color:#edc5d0}.pickup-section h2{font-size:59px;margin-bottom:24px}.pickup-section h2 em{color:#f1c5d0}.pickup-inner>div:first-child>p{color:#efdae1;line-height:1.85;max-width:470px;margin:0 0 20px}.pickup-inner>div:first-child>p:last-child{margin-bottom:0}.pickup-inner>div:first-child a{text-decoration:underline;text-underline-offset:5px}.pickup-address{padding:32px;border:1px solid #c495a373;background:#733347;border-radius:4px}.pickup-address address{font:400 38px/1.22 var(--serif);font-style:normal;letter-spacing:-.6px;margin:20px 0 17px}.pickup-address address span{display:block;font-size:28px;margin-top:4px}.appointment-tag{display:block;font-size:.875rem;color:#f3dce4;margin-bottom:23px}.pickup-address .button-outline{color:var(--cream);border-color:#e9c4cf;background:transparent;width:100%}.pickup-address .button-outline:hover{background:var(--cream);color:var(--wine)}.pickup-address p{margin:13px 0 0;color:#e9c9d3;font-size:.8125rem;text-align:center}.contact-help{padding-top:64px;padding-bottom:69px}.contact-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:34px}.contact-help-grid>div{border-top:1px solid var(--line);padding-top:22px}.contact-help h3{font:400 31px/1.2 var(--serif);color:var(--wine);margin:0 0 13px}.contact-help-grid p{color:var(--muted);line-height:1.85;margin:0}.contact-help>.text-link{display:inline-block;margin-top:33px}
@media(max-width:1100px){.about-intro,.about-story,.about-details-grid,.contact-grid,.pickup-inner{gap:5vw}.about-intro h1{font-size:68px}.about-brand-card{min-height:470px;padding:43px 24px 30px}.contact-copy h1{font-size:64px}.contact-order-content{padding:27px}.contact-order-content h2{font-size:37px}.contact-help-grid{gap:28px}.pickup-section h2{font-size:52px}}
@media(max-width:850px){.about-intro{gap:30px;padding-top:33px;padding-bottom:48px}.about-intro h1{font-size:57px;letter-spacing:-1.8px}.about-intro .eyebrow{letter-spacing:.12em}.about-brand-card{min-height:390px;padding:35px 20px 27px;gap:20px}.about-brand-card>.eyebrow{font-size:.75rem;letter-spacing:.08em}.about-brand-card figcaption>span{font-size:24px}.about-story{gap:35px;padding-top:49px;padding-bottom:49px}.about-story h2,.about-details h2,.contact-help h2{font-size:46px}.about-details>.section-shell{padding-top:49px;padding-bottom:49px}.about-details-grid{gap:35px;margin-top:31px}.about-detail-copy h3{font-size:28px}.about-details-grid figure{aspect-ratio:.65}.contact-grid{gap:35px}.contact-copy h1{font-size:55px;letter-spacing:-1.7px}.contact-order-content{padding:24px}.contact-order-content h2{font-size:34px}.contact-order-image{height:136px}.pickup-inner{gap:35px;padding-top:49px;padding-bottom:49px}.pickup-section h2{font-size:47px}.pickup-address{padding:26px}.pickup-address address{font-size:32px}.contact-help-grid{gap:23px}.contact-help h3{font-size:28px}}
@media(max-width:600px){.about-intro{grid-template-columns:1fr;gap:34px;padding-top:28px;padding-bottom:43px}.about-intro h1{font-size:clamp(55px,12.8vw,72px);letter-spacing:-1.8px;margin:20px 0 22px}.about-brand-card{max-width:390px;width:100%;margin:auto;min-height:0;padding:38px 25px 32px;gap:23px}.about-brand-card img{width:285px;max-width:100%}.about-brand-card>.eyebrow{letter-spacing:.12em}.about-brand-card figcaption>span{font-size:27px}.about-story{grid-template-columns:1fr;gap:26px;padding-top:43px;padding-bottom:43px}.about-story h2,.about-details h2,.contact-help h2{font-size:43px;letter-spacing:-1.2px}.about-details>.section-shell{padding-top:43px;padding-bottom:43px}.about-details-grid{grid-template-columns:1fr;gap:29px;margin-top:28px}.about-details-grid figure{aspect-ratio:1}.about-detail-copy h3{font-size:30px}.about-detail-copy>div{padding-top:18px;margin-bottom:24px}.about-detail-copy .text-link{font-size:.875rem}.om-hawra-page .final-invitation h2{font-size:51px}.contact-intro{padding-top:27px;padding-bottom:43px}.contact-intro .breadcrumbs{margin-bottom:28px}.contact-grid{grid-template-columns:1fr;gap:32px}.contact-copy h1{font-size:clamp(52px,12vw,68px);letter-spacing:-1.8px;line-height:1.07;margin:20px 0 23px}.contact-phone-card strong{font-size:38px}.contact-order-image{height:157px}.contact-order-content{padding:26px 23px}.contact-order-content h2{font-size:38px}.request-checklist{gap:10px}.contact-order-content .button{font-size:.875rem}.pickup-inner{grid-template-columns:1fr;gap:29px;padding-top:43px;padding-bottom:43px}.pickup-section h2{font-size:48px;margin-top:13px}.pickup-address{padding:28px 24px}.pickup-address address{font-size:35px;margin:17px 0}.pickup-address address span{font-size:27px}.contact-help{padding-top:43px;padding-bottom:46px}.contact-help-grid{grid-template-columns:1fr;gap:25px;margin-top:27px}.contact-help-grid>div{padding-top:20px}.contact-help h3{font-size:31px}.contact-help>.text-link{margin-top:29px}}
@media(max-width:370px){.about-intro h1{font-size:51px}.about-intro-copy>.eyebrow{font-size:.75rem;letter-spacing:.08em}.contact-copy h1{font-size:49px}.om-hawra-page .final-invitation h2{font-size:47px}.pickup-address address{font-size:32px}}

/* Final polish: motion, keyboard focus, small screens and short viewports. */
main,section,.hero-copy,.sweets-intro-copy,.about-intro-copy,.contact-copy,.product-copy{min-width:0}h1,h2,h3,p,figcaption{overflow-wrap:break-word}input,select,textarea{max-width:100%}input:user-invalid,select:user-invalid{border-color:var(--wine)}.faq-list summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px;border-radius:2px}.order-content>.close-button{position:sticky;top:14px;right:auto;margin:-19px -22px -18px auto;z-index:5;background:var(--cream);box-shadow:0 2px 8px #39242a0a}.order-content h2,.preview-copy h2{padding-right:8px}.form-brand{min-height:44px;display:inline-block}.text-link,.back-button{min-height:44px;display:inline-flex;align-items:center}.text-link:after{bottom:5px}.collection-note-row .text-link{white-space:normal}footer div a{font-size:.875rem;min-height:44px;display:inline-flex;align-items:center}.card-open{font-size:.875rem}dialog[open]{animation:dialog-appear .22s ease both}dialog[open]::backdrop{animation:dialog-appear .22s ease both}@keyframes dialog-appear{from{opacity:0}to{opacity:1}}.menu-toggle{transition:background .2s,border-color .2s}.menu-toggle[aria-expanded="true"]{background:var(--rose);border-color:#c697a3}.mobile-menu:not([hidden]){animation:menu-appear .2s ease}@keyframes menu-appear{from{opacity:.5;transform:translateY(-5px)}to{opacity:1;transform:none}}
@media(min-width:851px){.site-header .nav-link{display:inline-flex;min-height:44px;align-items:center}.nav-phone{min-height:44px}}
@media(max-width:850px){.mobile-menu a{min-height:44px}.section-heading p,.hero-description,.product-copy>p,.about-intro-copy>p,.contact-copy>p{max-width:100%}}
@media(max-width:600px){.order-content>.close-button{margin:-18px -8px -15px auto;top:14px}.form-bottom{flex-direction:column;align-items:stretch;gap:12px}.form-bottom>.button,.form-bottom>.back-button{width:100%;min-height:50px;font-size:.875rem}.form-bottom>span{max-width:none;text-align:center;order:2;font-size:.8125rem}.form-bottom>.back-button{justify-content:center;min-height:44px}.form-progress{margin-right:35px;gap:10px}.progress-line{width:30px;flex-shrink:1}.preview-copy .close-button{width:44px;height:44px}.hero-actions .text-link{min-height:44px}.sweet-strip{flex-wrap:wrap;row-gap:10px}.cake-choices{gap:11px}.cake-choice{line-height:1.5}.final-invitation .button{max-width:100%}.collection-note-row{gap:10px}.card-open{padding:9px 14px}.about-brand-card img{width:min(285px,100%)}footer div{gap:2px}}
@media(max-width:420px){.field-grid{grid-template-columns:1fr}.form-bottom{margin-top:21px}.order-content h2{font-size:33px}.form-progress{font-size:.8125rem}.cake-choices{padding-left:20px}.detail-photo{width:100px}.contact-order-content h2{font-size:35px}.pickup-address .button{padding:13px 16px}}

/* Keep the request form inside its columns, including native iOS date controls. */
#order-dialog { overflow-y: auto; overscroll-behavior-y: contain; }
#order-dialog .field-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
#order-dialog label { min-width: 0; }
#order-dialog input, #order-dialog select, #order-dialog textarea { min-width: 0; max-width: 100%; }
#order-dialog .full-field + .field-grid { margin-top: 18px; }

@media (max-width: 600px) {
  #order-dialog {
    position: fixed;
    inset: var(--order-viewport-top, 0px) 0 auto;
    margin: 0;
    width: 100%;
    max-width: 100%;
    height: var(--order-viewport-height, 100dvh);
    max-height: var(--order-viewport-height, 100dvh);
    border-radius: 0;
    scroll-padding-top: 76px;
    scroll-padding-bottom: 32px;
  }
  #order-dialog .order-content {
    padding: calc(28px + env(safe-area-inset-top, 0px)) 22px calc(36px + env(safe-area-inset-bottom, 0px));
  }
  #order-dialog .close-button { width: 44px; height: 44px; }
  #order-dialog .form-progress { margin-bottom: 24px; font-size: .8125rem; }
  #order-dialog .order-content h2 { font-size: clamp(32px, 7.8vw, 36px); line-height: 1.15; }
  #order-dialog .form-intro { font-size: 1rem; line-height: 1.65; margin-bottom: 24px; }
  #order-dialog .field-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  #order-dialog label { gap: 8px; }
  #order-dialog input, #order-dialog select { height: 52px; min-height: 52px; padding: 12px; font-size: 1rem; }
  #order-dialog input[type="date"] { display: block; }
  #order-dialog input::-webkit-date-and-time-value { min-height: 24px; text-align: left; }
  #order-dialog textarea { padding: 12px; font-size: 1rem; min-height: 128px; }
  #order-dialog .full-field { margin-top: 20px; }
  #order-dialog .full-field + .field-grid { margin-top: 20px; }
  #order-dialog .form-bottom { margin-top: 24px; gap: 14px; }
  #order-dialog .form-bottom > .button { min-height: 52px; }
}
@media(max-width:600px) and (max-height:500px){dialog{max-height:100dvh}.preview-layout{grid-template-columns:.75fr 1fr}.preview-photo{height:auto;min-height:0}.preview-photo img{height:100%;max-height:100dvh}.preview-copy{padding:35px 22px 25px}.preview-copy h2{font-size:30px}.preview-copy .close-button{right:12px;top:12px}.preview-copy .button{font-size:.8125rem}.preview-copy p{font-size:.875rem}}
@media(hover:none){.button:hover{transform:none;box-shadow:none}.cake-card:hover img,.product-photo:hover img,.main-photo:hover>img{transform:none}}
@media(prefers-reduced-motion:reduce){dialog[open],dialog[open]::backdrop,.mobile-menu:not([hidden]){animation:none!important}}
/* Switch the full menu before the links become cramped on small tablets. */
@media(max-width:1100px){.site-header .nav-link,.site-header .nav-phone{display:none}.menu-toggle{display:grid}.mobile-menu:not([hidden]){display:flex;flex-direction:column;background:#faeef1;border-bottom:1px solid var(--line);padding:13px 5vw 18px;gap:0}.mobile-menu a{padding:10px 0;font-size:1rem;color:var(--wine);min-height:44px}.mobile-menu a[aria-current="page"]{font-weight:600}}
@media(min-width:1101px){.mobile-menu,.menu-toggle{display:none!important}}

/* A complete, compact footer on phones, with page links beside contact links. */
@media (min-width: 1101px) { .site-header nav { gap: 20px; } }
.site-header .nav-link { white-space: nowrap; }
footer > div { flex: 0 1 620px; flex-wrap: wrap; column-gap: 20px; justify-content: flex-end; }
@media (max-width: 600px) {
  footer {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
    align-items: start;
    padding: 30px 23px calc(30px + env(safe-area-inset-bottom, 0px));
  }
  footer > span { min-width: 0; }
  footer .footer-brand { font-size: 24px; line-height: 1.25; }
  footer > span:nth-child(2) { font-size: .875rem; line-height: 1.75; }
  footer > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    grid-template-rows: repeat(4, auto);
    grid-auto-flow: column;
    gap: 2px 18px;
    width: 100%;
    margin-top: 4px;
    padding-top: 16px;
    border-top: 1px solid var(--line);
    align-items: start;
    justify-content: start;
  }
  footer > div > a {
    min-width: 0;
    min-height: 44px;
    font-size: .875rem;
    line-height: 1.45;
    justify-content: flex-start;
  }
  footer > div > a[href^="tel:"] { white-space: nowrap; }
}



/* Keep the social links together in every footer layout. */
footer .footer-socials { display: inline-flex; flex: 0 0 auto; flex-direction: row; flex-wrap: nowrap; align-items: center; gap: 8px; white-space: nowrap; }
footer .footer-socials a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; border: 1px solid var(--line); border-radius: 50%; color: var(--wine); text-decoration: none; transition: background .2s, border-color .2s; }
footer .footer-socials a:hover { background: var(--rose); border-color: #bb879f; text-decoration: none; }
footer .footer-socials svg { display: block; width: 20px; height: 20px; }
footer .footer-socials .social-icon-facebook, footer .footer-socials .social-icon-tiktok { fill: currentColor; stroke: none; }
/* Direct business email; kept with the studio address. */
footer .footer-email { display: flex; align-items: center; width: fit-content; max-width: 100%; min-height: 44px; margin-top: 3px; color: var(--wine); font-size: .875rem; line-height: 1.6; overflow-wrap: anywhere; text-decoration: underline; text-underline-offset: 4px; }
footer .footer-email:hover { color: var(--rose-heading); }
/* Studio registration below the footer name. */
footer .footer-cvr { display: block; margin-top: 12px; font: 400 .75rem/1.65 var(--sans); letter-spacing: .045em; color: var(--muted); }

.cg-browse-link{display:flex;justify-content:center;margin-top:32px}.cg-browse-link .button{gap:18px}
@media(min-width:1101px) and (max-width:1280px){.site-header .nav-link,.site-header .nav-phone{display:none}.site-header .menu-toggle{display:grid!important}.mobile-menu:not([hidden]){display:flex!important;flex-direction:column;background:#faeef1;border-bottom:1px solid var(--line);padding:13px 5vw 18px;gap:0}.mobile-menu a{padding:10px 0;min-height:44px}.mobile-menu[hidden]{display:none!important}}
@media(max-width:600px){.cg-browse-link .button{width:100%}}
