:root{--cream:#fffafa;--paper:#fffdfd;--blush:#f3dfe2;--rose:#b98691;--deep:#4a3539;--ink:#4a3539;--muted:#75686c;--line:#e8d9dd;--shadow:0 8px 30px #4a353908;--serif:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--ink);font:14px/1.8 Arial,Helvetica,sans-serif}img{display:block;max-width:100%}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #946672;outline-offset:4px}input:focus,textarea:focus,select:focus{outline:2px solid #946672;outline-offset:2px}.container{width:calc(100% - 80px);max-width:1180px;margin:auto}.skip{position:fixed;top:-100px;left:15px;background:var(--deep);color:white;padding:12px;z-index:50}.skip:focus{top:12px}.announcement{text-align:center;background:var(--deep);color:var(--paper);font-size:10px;padding:8px 15px;letter-spacing:.025em}.announcement a{text-decoration:none}.announcement span{margin-left:14px;text-decoration:underline}header{border-bottom:1px solid var(--line);background:var(--cream)}.nav{width:calc(100% - 80px);max-width:1180px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:110px;flex-wrap:wrap;padding-block:22px}.brand{text-decoration:none;display:inline-block}.brand-name{display:block;font-family:var(--serif);font-size:31px;letter-spacing:-.065em;line-height:1.1;white-space:nowrap}.brand-name i{font-weight:400}.brand-tagline{display:block;font-size:7px;letter-spacing:.17em;margin-top:10px}.menu{display:flex;align-items:center;gap:21px;font-size:12px}.menu a{text-decoration:none;min-height:40px;display:flex;align-items:center}.menu a:hover,.menu a[aria-current=page]{color:#946672;text-decoration:underline}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 22px;background:var(--deep);color:var(--paper);border:1px solid var(--deep);border-radius:4px;text-decoration:none;font-size:12px;font-weight:600;gap:10px;cursor:pointer}.btn:hover{background:#63464e}.btn.alt{background:transparent;color:var(--deep);border-color:var(--rose)}.nav-enquire{font-size:10px;padding:10px 15px;min-height:40px}h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:1.12;margin:0 0 20px}h1{font-size:clamp(42px,5vw,68px)}h2{font-size:clamp(32px,3.5vw,46px)}h3{font-size:25px}p{margin:0 0 18px}p:last-child{margin-bottom:0}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.17em;font-weight:600;color:#946672;margin-bottom:20px}.hero{padding:65px 0 75px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:65px;align-items:center}.hero p{color:var(--muted);max-width:450px;line-height:1.9}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-art img{width:100%;aspect-ratio:1/1.05;object-fit:cover;object-position:center 35%;border-radius:48% 48% 4px 4px;border:1px solid var(--line)}.hero h1 span{color:#946672!important}.features{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-block:1px solid var(--line);padding-block:25px;gap:0}.feature{text-align:center;padding:10px 18px;border-right:1px solid var(--line)}.feature:last-child{border:0}.feature .icon{font-size:24px;color:var(--rose)}.feature h3{font-size:20px;margin:9px 0}.feature p{font-size:11px;color:var(--muted)}.section{padding:75px 0}.section.alt{background:#f8eef0}.section-head{max-width:700px;text-align:center;margin:0 auto 38px}.section-head p{color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:27px}.card{background:var(--paper);border:1px solid var(--line);border-radius:5px;overflow:hidden;box-shadow:var(--shadow)}.card>img{width:100%;aspect-ratio:4/4.5;object-fit:contain;background:#f7f0ed}.card-body{padding:25px}.card-body a{text-decoration:none}.card-body p{font-size:12px;color:var(--muted)}.card-body h3{margin-bottom:12px}.text-link{display:inline-block;min-height:40px;padding-top:15px;font-size:11px;text-decoration:underline!important;color:#946672}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.gallery img,.gallery img.full-view{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;object-position:center;background:#f8f1ef;border-radius:5px;border:1px solid var(--line)}.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:70px}.about-photo img{width:100%;max-height:650px;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;border-radius:45% 45% 4px 4px}.about-grid p{color:var(--muted)}.quote{background:var(--blush);padding:24px 28px;border-left:2px solid var(--rose);font:italic 21px/1.6 var(--serif);margin:28px 0}.cta{text-align:center;padding:65px 20px;background:var(--blush);border-top:1px solid var(--line)}.cta p{color:var(--muted)}.script{font-family:var(--serif);font-style:italic;font-size:24px;color:#946672;margin-bottom:12px}.page-hero{text-align:center;padding:65px 20px;background:#f8eef0;border-bottom:1px solid var(--line)}.page-hero .container{max-width:800px}.page-hero p{color:var(--muted)}.contact-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:70px;align-items:start}.contact-grid>div>p{color:var(--muted)}.form-card{background:var(--paper);padding:32px;border:1px solid var(--line);border-radius:5px;box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:flex;flex-direction:column;gap:7px;min-width:0}.field.full{grid-column:1/-1}label{font-size:11px;font-weight:600}label small{font-size:10px;font-weight:400;color:var(--muted)}input:not([type=checkbox]),select,textarea{width:100%;min-width:0;min-height:46px;border:1px solid #d9c9ce;border-radius:3px;padding:12px 13px;background:#fffdfd;color:var(--deep);font-size:16px}textarea{min-height:150px;resize:vertical}.check-label{display:flex;gap:10px;align-items:flex-start;font-weight:400;line-height:1.8}.check-label input{width:18px;height:18px;flex-shrink:0;margin-top:2px;accent-color:var(--deep)}.field-note{font-size:10px;color:var(--muted);line-height:1.8}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#enquiry-status{font-size:12px;overflow-wrap:anywhere}button:disabled{opacity:.6;cursor:wait}.testimonials{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.testimonial{padding:28px;background:var(--paper);border:1px solid var(--line);border-radius:5px}.testimonial p{font-family:var(--serif);font-size:18px;line-height:1.8}.stars{color:#946672;letter-spacing:.1em;margin-bottom:13px}.review-source{font-family:Arial,sans-serif!important;font-size:10px!important;letter-spacing:.04em;margin-top:18px;color:var(--muted)}.reviews-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.reviews-intro .btn{flex-shrink:0}.narrow{max-width:730px}footer{padding:45px 0 25px;border-top:1px solid var(--line);background:var(--cream)}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:65px}.footer-grid h3{font-size:23px;margin-bottom:18px}.footer-grid p{font-size:11px;color:var(--muted);margin-top:20px;max-width:290px}.footer-grid>div>a:not(.brand){display:block;font-size:11px;margin:8px 0;overflow-wrap:anywhere}.copyright{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;margin-top:35px}.error-text{color:#873e48}
@media(max-width:1120px){.nav{gap:18px}.menu{gap:14px}.nav-enquire{display:none}.brand-name{font-size:29px}.hero-grid{gap:35px}.contact-grid{gap:40px}.footer-grid{gap:35px}}
@media(max-width:850px){.container,.nav{width:calc(100% - 40px)}.nav{min-height:90px;padding-block:20px}.menu-toggle{display:inline-flex;align-items:center;gap:12px;background:transparent;border:1px solid var(--line);border-radius:3px;min-height:44px;padding:8px 14px;color:var(--deep);font-size:12px}.menu-toggle[hidden]{display:none}.menu{width:100%;display:flex;flex-wrap:wrap;gap:5px 22px;border-top:1px solid var(--line);padding-top:15px}.menu[data-collapsible=true]{display:none}.menu[data-collapsible=true].is-open{display:flex}.menu a{min-height:44px}.hero-grid{grid-template-columns:1fr;gap:35px}.hero-art{max-width:500px;margin:auto;width:100%}.hero{padding:40px 0}.hero h1{max-width:600px}.features{grid-template-columns:repeat(2,minmax(0,1fr))}.feature:nth-child(2){border-right:0}.feature:nth-child(-n+2){border-bottom:1px solid var(--line);padding-bottom:25px}.feature:nth-child(n+3){padding-top:25px}.cards{gap:16px}.card-body{padding:20px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.about-photo{max-width:500px;margin:auto}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.section{padding:50px 0}.announcement span{display:inline-block;margin-left:8px}.page-hero{padding:45px 15px}.testimonials{gap:16px}.reviews-intro{display:block}.reviews-intro>.btn{margin-top:20px}}
@media(max-width:560px){.cards{grid-template-columns:1fr;gap:24px}.card>img{max-height:420px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.testimonials{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-card{padding:24px 20px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.announcement{font-size:9px}.brand-name{font-size:28px}.brand-tagline{font-size:6px}.hero-art img{aspect-ratio:1/1}.hero h1{font-size:45px}.page-hero h1{font-size:40px}.card-body h3{font-size:27px}.reviews-intro h2{font-size:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{header,.announcement,.menu-toggle,.skip,footer{display:none}.container{width:100%}.section{padding:20px 0}.hero,.page-hero{padding:20px 0;background:white}.gallery img,.card,.testimonial{break-inside:avoid}body{background:white}}

/* Original Chantelle Bakes logo, kept complete at every screen size. */
.brand-logo{display:block;width:132px;height:132px;object-fit:contain}.nav{padding-block:12px}.footer-grid .brand-logo{width:110px;height:110px}@media(max-width:850px){.nav{padding-block:10px}.brand-logo{width:96px;height:96px}}
