:root{--choc:#382722;--cream:#fff9f1;--aqua:#9bd8d8;--rasp:#a73b5b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--choc);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--rasp);outline-offset:5px}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3,.logo>span{font-family:'Playfair Display',Georgia,serif;font-weight:400}h1{font-size:clamp(50px,5.25vw,82px);line-height:1.12;letter-spacing:-3px;margin-bottom:28px}h2{font-size:clamp(40px,4.3vw,64px);line-height:1.14;letter-spacing:-1.8px;margin-bottom:28px}h3{font-size:25px;line-height:1.3}em{font-weight:400;color:var(--rasp)}p{max-width:530px}.announcement{text-align:center;background:var(--choc);color:var(--cream);font-size:11px;letter-spacing:1.3px;padding:8px 16px}header{height:112px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #38272218;background:var(--cream)}.logo{display:block;line-height:1;text-align:center}.logo>span{font-size:36px;letter-spacing:-2px}.logo small{display:block;font-size:9px;letter-spacing:4px;margin-top:12px}.logo-dot{color:#528c8b;font-size:26px;display:inline-block;margin-left:5px}nav{display:flex;gap:36px;align-items:center;font-size:13px}nav>a:not(.button):hover{color:var(--rasp)}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;background:var(--choc);color:var(--cream);padding:17px 25px;border:1px solid var(--choc);font-size:12px;font-weight:600;transition:.2s}.button:hover{background:var(--rasp);border-color:var(--rasp);transform:translateY(-2px)}.button.small{padding:12px 20px}.menu{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.hero-copy{padding:76px 7% 28px 10%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.3px;margin-bottom:23px}.intro{font-size:15px;max-width:385px;margin-bottom:30px;line-height:1.9}.text-link{display:block;width:fit-content;font-size:12px;font-weight:600;padding:12px 0;border-bottom:1px solid #38272266;margin-top:12px}.hero-foot{margin-top:auto;padding-top:45px;font-size:18px;font-family:Georgia,serif;width:100%;display:flex;align-items:center;justify-content:space-between}.hero-foot span{font:8px Arial;letter-spacing:1px}.hero-photo{position:relative;overflow:hidden;max-height:800px}.hero-photo>img{object-position:center 44%}.photo-label{position:absolute;bottom:30px;left:30px;color:white;font-size:12px;letter-spacing:1px;text-shadow:0 1px 6px black}.seal{position:absolute;right:25px;top:30px;background:var(--aqua);border-radius:50%;height:114px;width:114px;text-align:center;padding-top:23px;font-size:8px;line-height:1.4;letter-spacing:1px;transform:rotate(10deg)}.seal i{font-family:Georgia,serif;font-size:29px}.ribbon{background:var(--aqua);padding:22px 5%;display:flex;justify-content:space-around;align-items:center;font-size:12px;letter-spacing:.4px}.ribbon b{font-size:24px;font-weight:400}.wrap{max-width:1280px;margin:auto;padding:100px 6%}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.single-photo{height:510px;background:#efe3d2;position:relative;padding:25px}.single-photo img{object-fit:cover}.tiny-note{position:absolute;bottom:-28px;left:0;font-size:10px;font-style:italic}.intro-section p:not(.eyebrow){font-size:14px;line-height:1.9;color:#6e5b51}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:40px}.section-head h2{margin-bottom:0}.section-head>p{font-size:13px;line-height:1.9;padding-bottom:5px}.creation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.creation:nth-child(2){padding-top:48px}.image{height:350px;overflow:hidden}.image img{transition:transform .6s}.creation:hover img{transform:scale(1.04)}.card-caption{display:flex;justify-content:space-between;align-items:center;margin-top:20px}.card-caption h3{font-size:24px;margin-bottom:8px}.card-caption span{font-size:24px}.creation p{font-size:12px;color:#6e5b51}.fine{font-size:10px;color:#756157;line-height:1.7;margin-top:25px;max-width:none}.occasion{display:grid;grid-template-columns:1fr 1fr;background:var(--choc);color:var(--cream);margin-top:35px}.occasion-photo{height:650px}.occasion-photo img{object-position:center 55%}.occasion-copy{padding:80px 12%;align-self:center}.occasion h2{font-size:54px}.occasion em{color:var(--aqua)}.occasion p:not(.eyebrow){font-size:14px;color:#e0cfc3}.light{background:var(--aqua);color:var(--choc);margin-top:20px;border-color:var(--aqua)}.steps{text-align:center}.steps>.eyebrow{max-width:none}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;text-align:left;margin-top:60px}.step-grid article{border-top:1px solid #38272240;padding-top:24px}.step-grid span{color:var(--rasp);font-family:Georgia;font-size:32px}.step-grid h3{margin:20px 0 14px}.step-grid p{font-size:13px;color:#6e5b51}.gallery{padding-top:35px}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr 1fr;grid-template-rows:220px 220px;gap:20px}.gallery-grid button{border:0;padding:0;background:var(--choc);overflow:hidden}.gallery-grid button:first-child{grid-row:span 2}.gallery-grid button:last-child{grid-column:3;grid-row:1 / span 2}.gallery-grid img{transition:transform .4s}.gallery-grid button:hover img{transform:scale(1.04)}.enquiry{background:#f1e7da}.enquiry-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%}.enquiry h2{font-size:70px}.enquiry-grid>div>p:not(.eyebrow){font-size:14px;max-width:300px}.demo-note{border-top:1px solid #38272233;margin-top:35px;padding-top:22px;max-width:320px}.demo-note b{font-size:12px}.demo-note p{font-size:11px;line-height:1.8;margin-top:8px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:flex;flex-direction:column;font-size:11px;gap:8px;font-weight:500}.full{grid-column:span 2}input,select,textarea{min-width:0;width:100%;background:#fff9f1;border:1px solid #bca99b;border-radius:0;padding:12px;color:var(--choc);font-size:13px}input,select{height:46px}textarea{resize:vertical}form>.button{width:100%;margin-top:8px}#result{background:var(--cream);padding:22px;margin-top:20px}#result p{font-size:12px}footer{padding:60px 6% 20px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center;padding-bottom:45px}.footer-top>p{font-family:Georgia;font-size:23px;line-height:1.4;margin:0}.footer-top>div{display:flex;gap:25px;font-size:12px}.footer-bottom{border-top:1px solid #38272222;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:9px}dialog{background:var(--choc);color:var(--cream);border:0;padding:40px 25px 15px;max-width:90vw;width:800px}dialog::backdrop{background:#1a110feb}dialog img{height:70vh;object-fit:contain}dialog p{text-align:center;font-size:12px;max-width:none;margin:12px 0}dialog>div{display:flex;justify-content:center;gap:30px}dialog button{color:white;background:transparent;border:1px solid #ffffff50;padding:8px 20px}.close{position:absolute;right:8px;top:3px;border:0;min-height:40px}
@media(min-width:1500px){.hero{min-height:800px}.hero-copy{padding-top:100px}}@media(max-width:1000px){nav{gap:20px}.hero-copy{padding-top:55px}h1{font-size:58px}.hero-foot{display:block}.hero-foot span{display:block;margin-top:15px}.image{height:280px}.occasion h2{font-size:43px}.occasion-copy{padding:60px 9%}.occasion-photo{height:600px}.single-photo{height:440px}.enquiry-grid{gap:7%}}@media(max-width:700px){header{height:86px;padding:0 6%;position:relative;z-index:5}.logo>span{font-size:29px}.logo small{font-size:7px;margin-top:9px}.menu{display:block;background:none;border:1px solid #38272244;padding:9px 13px;font-size:12px}nav{display:none;position:absolute;top:86px;left:0;right:0;padding:25px;background:var(--cream);box-shadow:0 12px 20px #38272216}nav.open{display:flex;flex-direction:column;align-items:stretch}.hero{display:flex;flex-direction:column;min-height:0}.hero-copy{padding:42px 7% 30px}h1{font-size:clamp(45px,10.8vw,67px);letter-spacing:-2px;line-height:1.12}.eyebrow{font-size:8px;letter-spacing:1.9px;margin-bottom:18px}.intro{font-size:13px;line-height:1.85;max-width:350px}.hero-foot{display:none}.text-link{font-size:11px}.hero-photo{height:480px}.hero-photo>img{object-position:center 49%}.seal{height:94px;width:94px;padding-top:17px;font-size:7px;top:22px;right:20px}.seal i{font-size:25px}.photo-label{font-size:10px;left:22px}.ribbon{padding:17px 5%;gap:17px;overflow:hidden;white-space:nowrap;justify-content:flex-start;font-size:10px}.ribbon b{font-size:20px}.wrap{padding:65px 7%}.intro-section{grid-template-columns:1fr;gap:60px}.single-photo{height:400px;padding:20px;max-width:450px;width:100%;margin:auto}h2{font-size:43px}.intro-section p:not(.eyebrow){font-size:13px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin:22px 0 0;font-size:12px}.creation-grid{grid-template-columns:1fr;gap:30px}.creation:nth-child(2){padding-top:0}.image{height:400px}.creation:nth-child(3) .image{height:290px}.card-caption{margin-top:15px}.card-caption h3{font-size:25px}.occasion{grid-template-columns:1fr;margin-top:0}.occasion-photo{height:460px}.occasion-copy{padding:50px 7%}.occasion h2{font-size:44px}.step-grid{grid-template-columns:1fr;gap:25px;margin-top:35px}.step-grid article{padding-top:15px}.step-grid h3{margin:8px 0 10px}.gallery{padding-top:15px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:260px 230px;gap:12px}.gallery-grid button:first-child{grid-row:auto}.gallery-grid button:last-child{grid-column:auto;grid-row:auto}.enquiry-grid{grid-template-columns:1fr;gap:40px}.enquiry h2{font-size:57px}.demo-note{max-width:none}.enquiry-grid>div>p:not(.eyebrow){max-width:none}.form-grid{gap:17px 12px}.footer-top{flex-wrap:wrap;align-items:flex-start}.footer-top>p{font-size:20px}.footer-top>div{width:100%;justify-content:space-between}.footer-bottom{flex-direction:column;gap:8px}dialog{max-width:96vw;padding:40px 10px 15px}dialog img{height:65vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
/* Photograph-led compositions */
.occasion-photo{height:650px;overflow:hidden}.occasion-photo img{object-position:center}.gallery-grid{grid-template-columns:repeat(4,1fr);grid-template-rows:310px 290px 260px;gap:18px}.gallery-grid button:first-child{grid-column:1 / span 2;grid-row:1 / span 2}.gallery-grid button:last-child{grid-column:3 / span 2;grid-row:3}.gallery-grid button:nth-child(3){grid-column:4;grid-row:1}.gallery-grid button:nth-child(4){grid-column:3;grid-row:2}.gallery-grid button:nth-child(5){grid-column:4;grid-row:2}.gallery-grid button:nth-child(6){grid-column:1;grid-row:3}.gallery-grid button:nth-child(7){grid-column:2;grid-row:3}.gallery-grid button:nth-child(8){display:none}.gallery-grid button{position:relative}.gallery-grid button:after{content:'↗';position:absolute;right:12px;bottom:12px;background:var(--cream);color:var(--choc);width:34px;height:34px;border-radius:50%;display:grid;place-items:center}.gallery-grid button:nth-child(2) img{object-position:center}.single-photo{background:#eadfce;padding:18px}.hero-photo>img{object-position:center 44%}
@media(max-width:700px){.occasion-photo{height:340px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:390px 220px 240px 220px;gap:12px}.gallery-grid button:first-child{grid-column:1 / span 2;grid-row:1}.gallery-grid button:nth-child(2){grid-column:1;grid-row:2}.gallery-grid button:nth-child(3){grid-column:2;grid-row:2}.gallery-grid button:nth-child(4){grid-column:1;grid-row:3}.gallery-grid button:nth-child(5){grid-column:2;grid-row:3}.gallery-grid button:nth-child(6){grid-column:1;grid-row:4}.gallery-grid button:nth-child(7){grid-column:2;grid-row:4}.gallery-grid button:last-child{grid-column:1 / span 2;grid-row:5;height:240px}.hero-photo{height:500px}}
/* Clear, comfortable multi-page reading */
body{font-size:17px;line-height:1.75}p{max-width:58ch}nav{gap:25px;font-size:15px}nav a[aria-current=page]:not(.button){color:var(--rasp);text-decoration:underline;text-underline-offset:8px}.button,.button.small{font-size:14px;min-height:48px}.eyebrow{font-size:12px;letter-spacing:1.6px}.intro,.intro-section p:not(.eyebrow),.occasion p:not(.eyebrow),.step-grid p,.section-head>p,.creation p,.enquiry-grid>div>p:not(.eyebrow){font-size:17px;line-height:1.8}.text-link{font-size:15px}.fine,.demo-note p{font-size:13px}.demo-note b,label{font-size:15px}input,select,textarea{font-size:16px}input,select{height:50px}.announcement{font-size:12px}.footer-bottom{font-size:12px}.footer-top>div{font-size:15px}.tiny-note{font-size:13px}.page-intro{padding-top:75px;padding-bottom:45px;text-align:center}.page-intro h1{font-size:clamp(48px,6vw,82px);line-height:1.13;margin-bottom:25px}.page-intro>p{margin-left:auto;margin-right:auto;max-width:600px}.page-intro .eyebrow{max-width:none}.page-cta{text-align:center;background:#e5eeee;padding:65px 7%}.page-cta .eyebrow{max-width:none}.page-cta h2{font-size:48px}.wedding-spread,.flavour-feature,.about-band{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.wedding-spread{padding-top:15px}.wedding-spread>img{height:630px}.wedding-pair{display:grid;grid-template-columns:1fr 1fr;gap:40px;padding-top:10px}.wedding-pair figure{margin:0}.wedding-pair img{height:610px}.wedding-pair figcaption{font-size:15px;padding-top:15px}.flavour-feature{background:#f3e7d7;max-width:none;padding-left:max(7%,calc((100vw - 1120px)/2));padding-right:max(7%,calc((100vw - 1120px)/2))}.flavour-feature>img{height:500px}.about-band{border-top:1px solid #38272225}.skip-link{position:absolute;left:20px;top:-100px;z-index:100;background:var(--cream);padding:15px}.skip-link:focus{top:10px}.page-intro+.gallery{padding-top:25px}.page-intro+.gallery .section-head{display:none}.page-intro+.enquiry{margin-top:20px}.creations .section-head h2{font-size:52px}.hero{min-height:720px}.hero-copy{padding-top:65px}.hero-copy .intro{max-width:420px}.hero-foot{font-size:20px}.hero-foot span{font-size:10px}.photo-label{background:#382722d9;padding:8px 12px}.ribbon{font-size:14px}.gallery-grid button:nth-child(8){display:none}
@media(max-width:1000px) and (min-width:701px){nav{gap:14px;font-size:13px}header{padding-left:3%;padding-right:3%}.logo>span{font-size:30px}.hero-copy{padding-left:8%;padding-right:5%}h1{font-size:53px}.wedding-pair img{height:470px}}
@media(max-width:700px){body{font-size:17px}.page-intro{padding:45px 7% 25px}.page-intro h1{font-size:49px;letter-spacing:-1.7px}.page-intro>p{font-size:17px}.eyebrow{font-size:11px;line-height:1.7}.hero-copy{padding-top:40px}h1{font-size:47px}.hero-copy .intro{font-size:17px}.intro-section p:not(.eyebrow),.creation p,.step-grid p,.section-head>p{font-size:16px}.hero-photo{height:470px}.button{font-size:14px}.ribbon{font-size:13px}.wedding-spread,.flavour-feature,.about-band,.wedding-pair{grid-template-columns:1fr;gap:35px}.wedding-spread>img{height:500px}.wedding-pair img{height:490px}.flavour-feature>img{height:350px}.wedding-pair{padding-bottom:50px}.page-cta{padding:50px 7%}.page-cta h2{font-size:40px}.creations .section-head h2{font-size:42px}.footer-bottom{font-size:12px}.footer-top>div{font-size:15px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.enquiry h2{font-size:49px}.enquiry-grid{gap:30px}nav.open{gap:0}nav.open>a{padding:13px 4px}nav.open>.button{padding:13px 20px;margin-top:12px}.fine{font-size:13px}.text-link{font-size:15px}}
/* Detailed menus, clear prices and the face behind the counter. */
.nav-more{position:relative}.nav-more summary{cursor:pointer;list-style:none;padding:12px 0}.nav-more summary:after{content:' ⌄';font-size:13px}.nav-more>div{position:absolute;top:100%;right:-20px;min-width:190px;background:var(--cream);border:1px solid #38272225;box-shadow:0 12px 28px #38272215;padding:12px 20px;z-index:20}.nav-more>div a{display:block;padding:8px 0}.nav-more summary:focus-visible{outline:3px solid var(--rasp);outline-offset:5px}.footer-links{display:flex;flex-wrap:wrap;gap:12px 28px;padding:0 0 30px;font-size:14px}.footer-links a:hover{text-decoration:underline}.flavour-menu{display:grid;grid-template-columns:1fr 1fr;gap:0 65px;padding-top:20px}.flavour-item{display:flex;gap:25px;padding:35px 0;border-bottom:1px solid #38272225}.flavour-item h2{font-size:30px;letter-spacing:-.5px;margin:0 0 14px}.flavour-item p{font-size:17px;margin:0}.flavour-dot{flex-shrink:0;width:47px;height:47px;margin-top:7px;border-radius:50%;background:#ebb1c1;box-shadow:inset 0 0 0 8px #ffffff35}.flavour-dot.vanilla{background:#eddbb3}.flavour-dot.lemon{background:#ecd969}.flavour-dot.chocolate{background:#754a35}.flavour-dot.marble{background:linear-gradient(110deg,#ead8b8 50%,#79533e 50%)}.flavour-dot.turquoise{background:var(--aqua)}.wide-photo{padding-top:0}.wide-photo img{height:420px}.prices-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-top:20px}.price-panel{background:#f2e9dd;padding:35px}.price-panel h2{font-size:43px}.price-panel p{font-size:17px}.price-panel img{height:235px;object-position:center 50%;margin-top:26px}.price-panel a{text-decoration:underline;text-underline-offset:4px}table{border-collapse:collapse;width:100%;font-size:17px;margin:25px 0}th,td{text-align:left;padding:16px 0;border-bottom:1px solid #38272233}thead{font-size:13px}td{text-align:right;font-weight:700;white-space:nowrap}tbody th{font-weight:400}.boxed-note{border-left:3px solid #648d89;padding-left:20px;margin-top:30px}.boxed-note h3{font-size:25px;margin-bottom:12px}.order-notes{padding-top:25px;max-width:1000px}.order-notes h2{font-size:44px}.order-notes ul{padding-left:22px}.order-notes li{padding:7px 0}.order-notes .fine{font-size:14px;max-width:750px}.corporate-feature,.about-counter{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding-top:25px}.corporate-feature>img{height:560px}.corporate-feature h2,.about-counter h2{font-size:49px}.inline-links{display:flex;gap:30px;flex-wrap:wrap}.about-counter{grid-template-columns:1.2fr 1fr}.about-counter figure{margin:0}.about-counter figure img{height:auto;object-fit:contain}.about-counter figcaption{font-size:13px;padding-top:12px}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:9%;padding-top:20px}.contact-options article{border-top:1px solid #38272235;padding-top:30px}.contact-options h2{font-size:38px}header nav{gap:23px}
@media(max-width:1000px) and (min-width:701px){header nav{gap:12px;font-size:13px}.button.small{font-size:12px;padding:12px}.about-counter{grid-template-columns:1fr;gap:40px}.about-counter figure{max-width:800px}.corporate-feature h2{font-size:39px}.price-panel{padding:25px}.price-panel h2{font-size:35px}}
@media(max-width:700px){.flavour-menu,.prices-grid,.corporate-feature,.about-counter,.contact-options{grid-template-columns:1fr;gap:30px}.flavour-menu{gap:0;padding-top:5px}.flavour-item{gap:18px;padding:28px 0}.flavour-item h2{font-size:29px}.flavour-dot{width:36px;height:36px}.wide-photo img{height:260px}.price-panel{padding:25px 20px}.price-panel h2{font-size:36px}.price-panel table{font-size:16px}.order-notes h2{font-size:36px}.corporate-feature>img{height:330px}.corporate-feature h2,.about-counter h2{font-size:40px}.about-counter{padding-top:10px}.about-counter figure img{height:auto;width:100%}.contact-options h2{font-size:34px}.nav-more>div{position:static;box-shadow:none;border:0;border-left:2px solid var(--aqua);padding:0 20px;margin:5px 0 15px}.nav-more summary{padding:13px 4px}.nav-more>div a{padding:10px 0}header nav{gap:0}.footer-links{gap:12px 23px;font-size:14px}}
