:root{--purple:#603bb4;--ink:#2d2051;--yellow:#f5ff38;--lilac:#ebe3fa;--pink:#f54aa3;--coral:#ff8078}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fffefb;color:var(--ink);font-family:Montserrat,Arial,sans-serif;font-size:14px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;object-fit:cover}h1,h2,h3{font-family:Poppins,Arial,sans-serif;line-height:1.16;letter-spacing:-.04em;margin:0}h1{font-size:clamp(48px,5.5vw,80px);font-weight:700}h2{font-size:clamp(32px,3.5vw,47px)}h3{font-size:23px;letter-spacing:-.025em}p{margin:18px 0}.wrap{max-width:1240px;margin:auto;padding:0 52px}.top{background:var(--purple);color:white;text-align:center;padding:8px 15px;font-size:11px;letter-spacing:.08em}.top span{color:var(--yellow);margin:0 12px}header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:22px max(28px,calc((100vw - 1136px)/2));background:#fffefbf5;border-bottom:1px solid #ede6f4;gap:30px}.logo{font-family:Poppins,Arial,sans-serif;font-weight:800;font-size:26px;color:var(--purple);line-height:1;white-space:nowrap;letter-spacing:-1px}.logo span{font-family:Caveat,cursive;font-size:35px;padding:0 4px;font-weight:700}.logo small{display:block;font-family:Montserrat,Arial,sans-serif;font-size:7px;letter-spacing:2px;margin-top:8px;text-align:center}nav{display:flex;align-items:center;gap:24px;font-size:11px;font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--purple);color:white;padding:15px 24px;border:1px solid var(--purple);border-radius:50px;font-size:12px;font-weight:600;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-3px);box-shadow:0 5px 0 #2d205126}.small{padding:11px 20px}.outline{background:transparent;color:var(--purple)}.yellow{background:var(--yellow);color:var(--ink);border-color:var(--yellow)}.hand{font-family:Caveat,cursive;font-weight:500;color:var(--purple);letter-spacing:-.04em;font-size:1.3em}.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:42px;padding-top:60px;padding-bottom:65px}.eyebrow{font-size:10px;letter-spacing:.14em;font-weight:700;color:var(--purple);margin:0 0 20px}.intro{font-size:15px;line-height:1.9;max-width:460px;margin:25px 0}.hero h1 .hand{position:relative;white-space:nowrap}.hero h1 .hand:after{content:'';position:absolute;left:0;right:-10px;bottom:10px;background:var(--yellow);height:14px;z-index:-1;transform:rotate(-3deg)}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:24px 0}.textlink{font-size:11px;font-weight:600;border-bottom:1px solid #a993ca;padding:6px 0}.note{font-size:10px;opacity:.72;margin-top:20px}.hero-art{position:relative;padding:8px 15px 18px 30px}.photo-frame{height:490px;overflow:hidden;border-radius:180px 180px 18px 18px;transform:rotate(3deg);background:var(--lilac)}.photo-frame img{height:100%;object-position:50% 40%;transform:scale(1.05) rotate(-3deg)}.sticker{position:absolute;bottom:65px;left:0;background:var(--yellow);height:110px;width:110px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;text-align:center;line-height:1.15;transform:rotate(-12deg);font-family:Poppins;font-size:18px}.sticker b{font-family:Caveat;font-size:24px}.spark{position:absolute;right:-10px;top:35px;color:var(--pink);font-size:95px;line-height:1}.scribble{text-align:right;font-family:Caveat;font-size:25px;margin:14px -5px 0;transform:rotate(-3deg)}.ribbon{background:var(--lilac);color:var(--purple);padding:17px;text-align:center;font-family:Poppins;font-weight:600;letter-spacing:.18em;font-size:13px;overflow:hidden}.catalog{padding-top:85px;padding-bottom:65px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.section-head>p{max-width:410px;font-size:12px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:32px 0}.filters button{border:1px solid #dacfea;border-radius:30px;padding:9px 19px;font-size:11px;background:transparent;color:var(--ink)}.filters button.active{background:var(--purple);color:white;border-color:var(--purple)}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{border:1px solid #e5ddec;border-radius:16px;overflow:hidden;background:white}.card[hidden]{display:none}.card-img{height:255px;position:relative;background:var(--lilac)}.card-img img{height:100%}.tag{position:absolute;top:13px;left:12px;background:white;border-radius:30px;font-size:9px;padding:4px 12px;font-weight:600}.tag.yellow{background:var(--yellow)}.card-body{padding:20px 17px}.meta{font-size:9px;letter-spacing:.12em;font-weight:600;color:var(--purple);margin:0 0 10px}.card h3{font-size:19px}.card p:not(.meta){font-size:11px;line-height:1.8;min-height:80px}.card-bottom{border-top:1px solid #ede6f4;padding-top:15px;display:flex;justify-content:space-between;align-items:center;gap:5px}.card-bottom strong{font-family:Poppins;font-size:19px}.card-bottom small{font-family:Montserrat;font-size:9px;font-weight:400}.card-bottom a{font-size:9px;font-weight:600;color:var(--purple)}.center{text-align:center}.muted{font-size:10px;opacity:.65;margin-top:25px}.how{background:#f3eefb;padding:62px 0}.how h2{max-width:700px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:60px;margin-top:40px}.steps span{font-family:Caveat;color:var(--purple);font-size:42px}.steps h3{font-size:19px}.steps p{font-size:12px;max-width:260px}.gift{display:grid;grid-template-columns:1fr 1.1fr;gap:75px;align-items:center;padding-top:100px;padding-bottom:100px}.gift p:not(.eyebrow):not(.note){font-size:13px;max-width:450px}.gift-art{background:var(--lilac);padding:45px 25px 30px;border-radius:24px;transform:rotate(-3deg)}.gift-art img{border-radius:12px;box-shadow:0 18px 30px #28144e20;transform:rotate(7deg)}.gift-note{display:block;text-align:center;margin-top:30px;font-size:31px}.business{background:var(--purple);color:white;padding:75px 0 0}.business .eyebrow{color:var(--yellow)}.business .hand{color:var(--yellow)}.business-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;align-items:center}.business-grid>img{height:360px;border-radius:16px 100px 16px 16px}.business p{max-width:500px;font-size:12px}.pills{display:flex;flex-wrap:wrap;gap:7px;margin:25px 0}.pills span{font-size:9px;border:1px solid #ffffff50;border-radius:20px;padding:5px 10px}.private{display:flex;justify-content:space-between;align-items:center;padding-top:28px;padding-bottom:28px;border-top:1px solid #ffffff30;margin-top:40px;font-size:11px;gap:25px}.private a{color:var(--yellow)}.locations{padding-top:85px;padding-bottom:70px}.places{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.places article{padding:32px;background:var(--lilac);border-radius:18px}.places article+article{background:#fff0e9}.places p{font-size:12px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;padding-top:20px;padding-bottom:80px}details{border-bottom:1px solid #ded3eb;padding:17px 0}summary{font-weight:600;font-size:12px;cursor:pointer}details p{font-size:12px}.last{background:var(--lilac);text-align:center;padding:50px 24px 60px}.last .hand{font-size:34px;margin:0 0 10px}.last h2{font-size:32px;margin-bottom:24px}footer{display:grid;grid-template-columns:1.3fr 1fr 1.2fr;gap:30px;padding-top:45px!important;padding-bottom:20px!important}footer a{display:block;font-size:11px;margin-bottom:5px}footer p{font-size:9px;opacity:.6;grid-column:1/-1}.menu{display:none}.skip{position:absolute;left:10px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--pink);outline-offset:5px}@media(max-width:1050px){.wrap{padding-left:30px;padding-right:30px}nav{gap:14px}.cards{grid-template-columns:repeat(2,1fr)}.card-img{height:310px}.card p:not(.meta){min-height:40px}.hero{gap:15px}.hero .actions{gap:10px}.photo-frame{height:440px}.gift{gap:35px}}@media(max-width:760px){html{scroll-padding-top:90px}.top{font-size:9px}.top span{margin:0 4px}header{padding:17px 22px}.logo{font-size:23px}.menu{display:block;border:0;background:var(--lilac);color:var(--purple);border-radius:50%;width:40px;height:40px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fffefb;padding:20px 25px;border-bottom:1px solid #ddd;flex-direction:column;align-items:stretch;gap:20px}nav.open{display:flex}.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:35px}.hero h1{font-size:58px}.intro{font-size:13px}.hero-art{max-width:480px;width:100%;margin:20px auto 0;padding-left:25px;padding-right:20px}.photo-frame{height:380px}.spark{right:4px;font-size:75px}.sticker{height:95px;width:95px;bottom:70px}.scribble{font-size:23px}.ribbon{font-size:10px;white-space:nowrap}.section-head{display:block}.section-head>p{margin-top:20px}.catalog{padding-top:50px;padding-bottom:40px}.cards{gap:15px}.card-img{height:220px}.card-body{padding:15px 12px}.card h3{font-size:17px}.card p:not(.meta){font-size:10px;min-height:72px}.card-bottom{display:block}.card-bottom a{display:block;margin-top:8px}.filters{gap:7px}.filters button{padding:8px 13px;font-size:10px}.steps{grid-template-columns:1fr;gap:15px;margin-top:25px}.steps p{max-width:none;margin:10px 0}.how{padding:45px 0}.gift{grid-template-columns:1fr;gap:40px;padding-top:65px;padding-bottom:55px}.gift-art{margin:0 10px}.gift .actions{gap:10px}.business{padding-top:50px}.business-grid{grid-template-columns:1fr;gap:25px}.business-grid>img{height:280px}.private{display:block;margin-top:30px}.private a{display:block;margin-top:10px}.places{grid-template-columns:1fr}.locations{padding-top:50px;padding-bottom:45px}.places article{padding:26px}.faq{grid-template-columns:1fr;gap:20px;padding-bottom:50px}.last h2{font-size:27px}footer{grid-template-columns:1fr 1fr}footer>.logo{grid-column:1/-1}}@media(max-width:380px){.cards{grid-template-columns:1fr}.card-img{height:300px}.card p:not(.meta){min-height:0}.hero h1{font-size:49px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.page-heading{padding-top:65px;padding-bottom:45px;background:linear-gradient(100deg,#f4effc00,#f4effc)}.page-heading h1{font-size:clamp(38px,5vw,65px)}.content-section{padding-top:35px;padding-bottom:65px}.content-section>p{max-width:850px}.content-section h2{font-size:32px;margin:32px 0 25px}.content-section h3{margin-top:30px}.breadcrumb{padding-top:30px;font-size:11px}.model-detail{display:grid;grid-template-columns:1fr 1fr;gap:55px;padding-top:40px;padding-bottom:40px}.model-detail h1{font-size:42px}.gallery img{height:480px;border-radius:18px;object-fit:contain;background:#f0e9f8;margin-bottom:20px}.gallery img+img{height:300px}.price{font:600 29px Poppins}.price small{font:12px Montserrat}dl{display:grid;grid-template-columns:135px 1fr;gap:13px;font-size:12px}dt{font-weight:600}dd{margin:0}.rounded{border-radius:24px}.formula-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.formula-grid article{background:var(--lilac);padding:25px;border-radius:18px}.formula-grid ul{padding-left:18px;font-size:12px}table{border-collapse:collapse;width:100%;margin:30px 0}td,th{padding:16px;text-align:left;border-bottom:1px solid #ddd0e9}th{background:var(--lilac)}.contact-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:60px}label{display:block;font-weight:600;font-size:12px;margin-bottom:20px}input,select,textarea{display:block;width:100%;margin-top:7px;border:1px solid #c5b6db;border-radius:9px;background:white;color:var(--ink);padding:13px;font:14px Montserrat}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.card-bottom strong{font-size:17px}header{padding-left:25px;padding-right:25px}nav{gap:20px}@media(max-width:760px){.model-detail,.contact-grid,.formula-grid{grid-template-columns:1fr;gap:25px}.gallery img{height:360px}.page-heading{padding-top:40px}.model-detail h1{font-size:35px}dl{grid-template-columns:110px 1fr}.content-section{padding-bottom:45px}table{font-size:11px}td,th{padding:10px}}

.christmas-offers{padding-top:65px;padding-bottom:65px;border-top:1px solid #e9e3f2;border-bottom:1px solid #e9e3f2;background:#fff}.christmas-offers .hand{color:#b92e73}.noel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:32px}.noel-card{border:1px solid #ded3ed;border-radius:18px;padding:27px 24px;display:flex;flex-direction:column;align-items:flex-start}.noel-card h3{font-size:22px}.noel-card p:not(.noel-discount):not(.meta):not(.note){font-size:12px}.noel-card .noel-discount{font:700 48px Poppins;color:var(--purple);margin:18px 0 5px;letter-spacing:-.05em}.noel-card:nth-child(2) .noel-discount{color:#b92e73}.noel-example strong{font:700 24px Poppins;color:var(--purple)}.noel-example span{font-size:10px}.noel-card .button{margin-top:auto;font-size:11px;padding:12px 18px}.noel-conditions{font-size:10px;line-height:1.8;max-width:950px;margin:25px 0 0;color:#665979}.copy-code{display:flex;gap:12px;border:1px solid #c9b8e0;border-radius:8px;align-items:center;padding:10px;margin:4px 0}.copy-code code{font:bold 17px Montserrat;color:var(--purple);letter-spacing:.04em}.copy-code button{background:white;color:var(--purple);border:0;border-left:1px solid #ddd;padding-left:12px;font-size:10px}.copy-status{font-size:10px!important;color:var(--purple);min-height:15px;margin:3px 0}.noel-card .note{margin-top:10px;margin-bottom:20px}.top a{display:block}.top a:hover{text-decoration:underline}@media(max-width:1050px){.noel-grid{gap:14px}.noel-card{padding:23px 18px}.copy-code{gap:7px}.copy-code code{font-size:14px}}@media(max-width:760px){.christmas-offers{padding-top:45px;padding-bottom:45px}.noel-grid{grid-template-columns:1fr;gap:17px}.noel-card{padding:25px}.noel-card .button{margin-top:15px}.noel-card .noel-discount{font-size:42px}.copy-code code{font-size:18px}.top{font-size:10px;line-height:1.7;padding:9px 18px}.noel-conditions{font-size:10px}}

.diy-strip{display:flex;gap:20px;align-items:center;padding-top:15px;padding-bottom:15px;border-bottom:1px solid #ede6f4}.diy-strip-photo{flex:0 0 92px;height:92px;overflow:hidden;border-radius:12px}.diy-strip-photo img{height:100%;object-fit:cover}.diy-strip .eyebrow{font-size:8px;letter-spacing:.12em;margin:0 0 5px}.diy-strip p:not(.eyebrow){font:600 20px Poppins;margin:0;line-height:1.4;letter-spacing:-.03em}.diy-strip p span{color:var(--purple)}.diy-tools{height:66px;width:106px;object-fit:contain;opacity:.8}.diy-strip .textlink{margin-left:auto;white-space:nowrap}.christmas-offers{position:relative;isolation:isolate}.christmas-offers .section-head{padding-right:120px}.noel-details{position:absolute;width:190px;height:80px;right:35px;top:24px;object-fit:contain;pointer-events:none}.christmas-offers .section-head>p{max-width:340px}.booking-choices{margin-top:24px}.booking-choices h3{margin-top:0}.booking-choices .button{margin:8px 8px 8px 0}.gift-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.gift-products .card{display:flex;flex-direction:column}.gift-products .card-body{display:flex;flex-direction:column;flex:1}.gift-products .actions{margin-top:auto}.gift-products .card-img{height:230px}.gift-products .button{font-size:10px;padding:10px 15px}.checkout-note{font-size:11px;color:#655677}.reserve-list{padding:20px 0;border-bottom:1px solid #e5ddec}.reserve-list h3{margin:0 0 12px}.reserve-list .actions{margin:10px 0}@media(max-width:1050px){.diy-strip{gap:14px}.diy-tools{width:80px}.diy-strip p:not(.eyebrow){font-size:17px}.christmas-offers .section-head{padding-right:0}.christmas-offers .section-head>p{max-width:370px}.noel-details{top:18px;width:140px;right:20px}.christmas-offers .section-head h2{padding-right:75px}}@media(max-width:760px){.diy-strip{gap:12px;flex-wrap:wrap;padding-top:15px;padding-bottom:15px}.diy-strip-photo{flex-basis:72px;height:72px}.diy-strip p:not(.eyebrow){font-size:16px}.diy-strip .eyebrow{font-size:7px}.diy-tools{width:57px;height:45px;margin-left:auto}.diy-strip .textlink{margin:0 0 0 84px;font-size:10px}.noel-details{width:118px;height:55px;top:15px;right:15px}.christmas-offers .section-head h2{padding-right:45px}.gift-products{grid-template-columns:1fr}.gift-products .card-img{height:300px}}

.reserve-list[hidden]{display:none}.daisy-widget{min-height:250px;width:100%;margin:25px 0}.daisy-widget iframe{max-width:100%;border:0}.content-section strong{color:var(--purple)}

.noel-shared>h3,.noel-other-offers>h3{font-size:23px;color:var(--purple)}.noel-scope{font-size:12px;margin:10px 0 0}.noel-grid.noel-pair{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:22px}.noel-other-offers{margin-top:42px;padding-top:30px;border-top:1px solid #e5ddec}.noel-other-offers>.noel-card{margin-top:22px;display:grid;grid-template-columns:minmax(140px,.65fr) minmax(220px,1.3fr);column-gap:40px;align-items:start;background:white}.noel-other-offers .meta,.noel-other-offers h3,.noel-other-offers .noel-discount{grid-column:1}.noel-other-offers .noel-discount{grid-row:3 / span 3;margin:12px 0 0}.noel-other-offers .noel-card>p:not(.meta):not(.noel-discount),.noel-other-offers .copy-code,.noel-other-offers .button{grid-column:2}.noel-other-offers .noel-card>p:not(.meta):not(.noel-discount):first-of-type{margin-top:0}.noel-other-offers .copy-code{justify-self:start}.noel-other-offers .button{justify-self:start;margin-top:8px}.noel-other-offers .noel-card>p:nth-child(4){grid-row:1 / span 2;margin-top:0}.noel-other-offers .copy-code{grid-row:3}.noel-other-offers .copy-status{grid-row:4}.noel-other-offers .note{grid-row:5}.noel-other-offers .button{grid-row:6}.noel-shared .noel-card{background:white}.card-img img.carnet-duo{object-fit:cover;object-position:center}@media(max-width:760px){.noel-grid.noel-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.noel-pair .noel-card{padding:18px 12px}.noel-pair .noel-card h3{font-size:19px}.noel-pair .meta{font-size:8px;letter-spacing:.06em}.noel-pair .noel-card .noel-discount{font-size:34px}.noel-pair .noel-card p:not(.noel-discount):not(.meta){font-size:11px}.noel-pair .noel-card .button{font-size:10px;padding:10px 12px}.noel-pair .noel-example strong{font-size:21px}.noel-shared>h3,.noel-other-offers>h3{font-size:21px}.noel-other-offers>.noel-card{display:flex;gap:0}.noel-other-offers .noel-discount{margin:15px 0 5px}.noel-other-offers .button{margin-top:12px}.noel-other-offers{margin-top:30px;padding-top:25px}}

.card-img img.carnet-duo{object-fit:contain;background:white}

.top .banner-star{display:inline;color:#f5ff38;font-size:16px;margin:0 7px 0 0}.noel-pair{align-items:stretch}.noel-pair .noel-card{height:100%}.noel-pair .noel-card .button{margin-top:auto!important;align-self:stretch;min-height:52px;text-align:center}.noel-pair .noel-example{margin-bottom:25px}.noel-pair .noel-example strong{white-space:nowrap}.digital-gift,.gift-art .digital-gift{max-height:440px;width:100%;object-fit:contain;transform:none;border-radius:4px;box-shadow:0 5px 20px #38235c15}.gift-art{padding:26px}.gift-format-note{font-size:10px;text-align:center;color:#665979}.gift-art .gift-note{font-size:29px;margin-top:20px}.cards .card>a{display:flex;flex-direction:column;height:100%}.cards .card>a .card-body{display:flex;flex:1;flex-direction:column}.cards .card>a .card-bottom{margin-top:auto}@media(max-width:760px){.noel-pair .noel-card .button{min-height:56px;line-height:1.5}.noel-pair .noel-example strong{font-size:20px}.top .banner-star{font-size:13px;margin-right:4px}.digital-gift,.gift-art .digital-gift{max-height:380px}.gift-art{padding:22px}}

.gift-formats{padding-top:75px;padding-bottom:80px}.gift-formats h2 .hand{color:var(--purple)}.gift-formats-intro{max-width:650px;font-size:13px;margin:20px 0 30px}.gift-formats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.gift-format-card{border:1px solid #ded3ed;border-radius:20px;background:#fff;padding:28px;display:flex;flex-direction:column;align-items:stretch}.format-heading{min-height:85px}.format-heading h3{font-size:23px;margin:0 0 12px}.format-status{display:inline-block;font-size:10px;line-height:1.6;font-weight:600;letter-spacing:.02em;padding:5px 11px;border-radius:30px}.format-status.available{color:#603bb4;border:1px solid #bda7df;background:#f6f2fc}.format-status.soon{color:#655b70;border:1px solid #dad3df;background:#faf9fb}.format-image{height:330px;margin:20px 0 5px;display:flex;align-items:center;justify-content:center}.format-image img{width:100%;height:100%;object-fit:contain;border-radius:5px}.format-image.digital img{filter:drop-shadow(0 4px 9px #38235c18)}.format-image.paper{padding:30px 8px}.gift-format-card>p{font-size:12px;line-height:1.9}.gift-format-card .format-caption{font-size:10px;color:#6c6176;margin-top:0}.gift-format-card .actions{margin-top:auto;margin-bottom:0;gap:10px;padding-top:20px}.gift-format-card .button{font-size:11px;padding:12px 19px}.gift-format-card .paper-announcement{font-size:15px;color:var(--purple);font-weight:600;margin-top:auto;padding-top:20px}.paper-format{border-style:dashed}@media(max-width:760px){.gift-formats{padding-top:50px;padding-bottom:50px}.gift-formats-grid{grid-template-columns:1fr;gap:22px}.gift-format-card{padding:24px}.format-image{height:310px}.format-image.paper{height:250px;padding:15px 0}.format-heading{min-height:0}.format-heading h3{font-size:22px}.gift-format-card .actions{padding-top:12px}.gift-format-card .paper-announcement{margin-top:10px}}
/* Mobile welcome: the title and the workshop photograph share the first row. */
@media(max-width:760px){
 .hero.wrap{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);grid-template-areas:"eyebrow eyebrow" "title photo" "intro intro" "actions actions" "note note";column-gap:16px;row-gap:0;align-items:center;padding-top:25px;padding-bottom:32px}
 .hero .hero-copy{display:contents}
 .hero .hero-copy>.eyebrow{grid-area:eyebrow;font-size:9px;letter-spacing:.12em;margin:0 0 22px}
 .hero .hero-copy>h1{grid-area:title;min-width:0;font-size:clamp(27px,7.8vw,43px);line-height:1.13;letter-spacing:-.045em;position:relative;z-index:1;margin:0;padding-bottom:8px}
 .hero .hero-copy>h1 .hand{font-size:1.34em;white-space:nowrap}
 .hero .hero-art{grid-area:photo;min-width:0;width:100%;max-width:none;padding:0;margin:0;position:relative}
 .hero .photo-frame{height:clamp(220px,62vw,310px);width:100%;border-radius:100px 100px 12px 12px;transform:rotate(2deg);overflow:hidden}
 .hero .photo-frame img{height:100%;width:100%;object-fit:cover;object-position:50% 38%;transform:scale(1.05) rotate(-2deg)}
 .hero .sticker{width:68px;height:68px;left:-11px;bottom:25px;font-size:13px;line-height:1.15}
 .hero .sticker b{font-size:17px}
 .hero .spark{font-size:39px;right:-9px;top:16px;line-height:1}
 .hero .scribble{font-size:17px;line-height:1.1;margin:12px -3px 0 0;text-align:right;transform:rotate(-3deg)}
 .hero .hero-copy>.intro{grid-area:intro;max-width:none;font-size:13px;line-height:1.8;margin:24px 0 0}
 .hero .hero-copy>.actions{grid-area:actions;display:flex;flex-wrap:wrap;gap:13px 20px;align-items:center;margin:20px 0 0}
 .hero .hero-copy>.actions .button{font-size:12px;padding:13px 20px}
 .hero .hero-copy>.actions .textlink{font-size:11px}
 .hero .hero-copy>.note{grid-area:note;max-width:none;font-size:9px;line-height:1.65;margin:18px 0 0}
}
@media(max-width:360px){.hero.wrap{padding-left:18px;padding-right:18px;column-gap:13px}.hero .hero-copy>h1{font-size:27px}.hero .photo-frame{height:215px}.hero .sticker{width:60px;height:60px;font-size:12px;left:-8px}.hero .sticker b{font-size:15px}.hero .scribble{font-size:15px}.hero .hero-copy>.eyebrow{font-size:8px}}

.upcoming-workshops{padding-top:45px;padding-bottom:30px;border-bottom:1px solid #eee8f5}.upcoming-workshops .section-head{margin-bottom:10px}.upcoming-workshops .section-head p{font-size:12px}.upcoming-workshops .daisy-widget{margin:15px 0 5px;min-height:250px}.upcoming-fallback{font-size:10px;color:#6c6176;margin:5px 0 0}.upcoming-fallback .textlink{font-size:10px}.christmas-compact{padding-top:30px;padding-bottom:30px;background:white;border-top:1px solid #e5ddec;border-bottom:1px solid #e5ddec}.compact-noel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.compact-noel-heading h2{font-size:27px}.compact-noel-heading .hand{color:#b92e73}.compact-noel-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.compact-noel-grid h3{font-size:18px;color:var(--purple);margin:0}.compact-noel-grid p{font-size:11px;margin:9px 0}.compact-noel-grid .textlink{font-size:11px}.compact-noel-code.noel-card{border:0;border-left:1px solid #e5ddec;border-radius:0;padding:0 0 0 30px;display:block}.compact-noel-code .copy-code{display:inline-flex;margin:2px 0;padding:7px 11px}.compact-noel-code .copy-code code{font-size:14px}.compact-noel-code .copy-status{min-height:0;margin:0;font-size:10px}@media(max-width:760px){.upcoming-workshops{padding-top:30px;padding-bottom:25px}.upcoming-workshops h2{font-size:29px}.upcoming-workshops .section-head>div>p:not(.eyebrow){margin:12px 0 7px}.upcoming-workshops .daisy-widget{margin-top:10px}.christmas-compact{padding-top:26px;padding-bottom:26px}.compact-noel-heading{display:block;margin-bottom:20px}.compact-noel-heading h2{font-size:25px;margin-bottom:10px}.compact-noel-heading>.textlink{font-size:10px}.compact-noel-grid{grid-template-columns:1fr;gap:18px}.compact-noel-code.noel-card{border-left:0;border-top:1px solid #e5ddec;padding:18px 0 0}.compact-noel-grid h3{font-size:17px}}

/* Consistent, tighter section rhythm, especially on phones. */
.catalog{padding-top:45px;padding-bottom:38px}.upcoming-workshops{padding-top:32px;padding-bottom:18px}.upcoming-workshops h2{font-size:32px}.upcoming-workshops .section-head{margin-bottom:8px}.upcoming-workshops .daisy-widget{min-height:0;margin:8px 0 0}.upcoming-fallback{padding:5px 0;border:0;font-size:10px}.upcoming-fallback summary{font-size:10px;color:#6c6176;font-weight:400}.upcoming-fallback .textlink{display:inline-block;margin-top:6px}.gift-formats{padding-top:45px;padding-bottom:45px}.locations{padding-top:45px;padding-bottom:38px}.faq{padding-top:20px;padding-bottom:40px}.page-heading{padding-top:42px;padding-bottom:28px}.content-section{padding-top:22px;padding-bottom:38px}.content-section h2{margin:22px 0 18px}.gift{padding-top:50px;padding-bottom:50px}.how{padding:42px 0}.business{padding-top:48px}.last{padding-top:35px;padding-bottom:40px}.section-head{margin-bottom:22px}.filters{margin:22px 0}.places{margin-top:25px}.steps{margin-top:25px}.opening-status{display:inline-block;color:var(--purple);font-size:11px;font-weight:600;border:1px solid #d5c6e9;padding:5px 12px;border-radius:30px;margin:12px 0 0}.location-opening-note{font-size:11px!important;margin:8px 0}.opening-notice{font-size:12px;padding:16px 18px;border:1px solid #ded3ed;border-radius:12px;margin-bottom:22px;line-height:1.8}.opening-filter-message{font-size:13px;padding-top:0;padding-bottom:30px}.opening-information h2{font-size:29px}.opening-information p{max-width:690px}@media(max-width:760px){.hero.wrap{padding-top:20px;padding-bottom:24px}.hero .hero-copy>.eyebrow{margin-bottom:16px}.hero .hero-copy>.intro{margin-top:18px}.hero .hero-copy>.actions{margin-top:16px}.hero .hero-copy>.note{margin-top:12px}.upcoming-workshops{padding-top:24px;padding-bottom:12px}.upcoming-workshops h2{font-size:27px}.upcoming-workshops .section-head{margin-bottom:6px}.upcoming-workshops .section-head>div>p:not(.eyebrow){margin:9px 0 4px}.upcoming-workshops .section-head .eyebrow{margin-bottom:12px}.upcoming-workshops .textlink{font-size:10px}.upcoming-workshops .daisy-widget{margin-top:6px;min-height:0}.catalog{padding-top:28px;padding-bottom:28px}.catalog .section-head{margin-bottom:18px}.catalog .eyebrow{margin-bottom:12px}.catalog .section-head>p{margin-top:14px;margin-bottom:0}.filters{margin:18px 0}.how{padding:30px 0}.gift-formats{padding-top:30px;padding-bottom:30px}.gift-formats-intro{margin:14px 0 22px}.business{padding-top:32px}.private{margin-top:25px;padding-top:20px;padding-bottom:20px}.locations{padding-top:30px;padding-bottom:28px}.places{margin-top:22px;gap:18px}.faq{padding-top:10px;padding-bottom:28px;gap:12px}.faq .eyebrow{margin-bottom:12px}.page-heading{padding-top:30px;padding-bottom:22px}.page-heading .intro{margin-bottom:0}.content-section{padding-top:18px;padding-bottom:28px}.gift{padding-top:32px;padding-bottom:32px;gap:28px}.last{padding-top:28px;padding-bottom:32px}.opening-information h2{font-size:25px}.opening-notice{font-size:11px;padding:14px}.ribbon{padding-top:12px;padding-bottom:12px}}

/* Content-driven embeds and consistent spacing across all page templates. */
.daisy-widget{min-height:0;margin:16px 0 10px}
.daisy-widget iframe{display:block;width:100%;min-height:0}
.checkout-note{margin:10px 0 0;line-height:1.65}
.content-section>h2:first-child{margin-top:0}
.content-section+.content-section{padding-top:10px}
.content-section>:last-child{margin-bottom:0}
.model-detail{padding-top:28px;padding-bottom:28px;gap:36px}
.content-section .actions:last-child{margin-bottom:0}
.noel-other-offers{margin-top:28px;padding-top:24px}
.noel-conditions{margin-top:18px}
@media(max-width:760px){
 .daisy-widget{margin:12px 0 8px}
 .content-section{padding-top:16px;padding-bottom:24px}
 .content-section+.content-section{padding-top:8px}
 .content-section h2{margin-bottom:14px}
 .model-detail{padding-top:22px;padding-bottom:24px;gap:20px}
 .model-detail .gallery img{height:auto;max-height:360px;aspect-ratio:1/1;margin-bottom:12px}
 .noel-other-offers{margin-top:24px;padding-top:20px}
 .noel-grid.noel-pair{margin-top:16px}
 .noel-pair .noel-card>p{margin-top:12px;margin-bottom:12px}
 .noel-pair .noel-example{margin-bottom:18px}
 .gift-format-card{padding:20px}
 footer{padding-top:28px!important;gap:20px}
}

.christmas-offers{padding-top:38px;padding-bottom:38px}
@media(max-width:760px){.christmas-offers{padding-top:24px;padding-bottom:24px}}

/* Group bookings are a primary entry, with equal visibility for both audiences. */
.group-events{padding-top:36px;padding-bottom:28px}
.group-events>.eyebrow{margin-bottom:12px}
.group-events>h2{font-size:34px;margin-bottom:22px}
.group-events-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.group-event-card{display:grid;grid-template-columns:170px minmax(0,1fr);border:1px solid #ded3ed;border-radius:16px;overflow:hidden;background:white;min-width:0}
.group-event-photo{display:block;min-width:0}
.group-event-photo img{height:100%;min-height:240px;object-fit:cover;object-position:50% 65%}
.group-event-body{padding:22px 20px;display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.group-event-body h3{font-size:23px}
.group-event-body>p:not(.meta){font-size:12px;line-height:1.7;margin:12px 0 18px}
.group-event-body .button{margin-top:auto;font-size:11px;padding:11px 16px}
/* Two concise gift rows, each with its own thumbnail and availability. */
.gift-formats-grid.gift-format-rows{grid-template-columns:1fr;gap:14px}
.gift-format-rows .gift-format-card{display:grid;grid-template-columns:155px minmax(0,1fr);gap:26px;padding:20px 24px;align-items:center}
.gift-format-rows .format-image,.gift-format-rows .format-image.paper{height:180px;padding:0;margin:0}
.gift-format-rows .format-heading{min-height:0}
.gift-format-rows .format-heading h3{font-size:23px}
.gift-format-rows .format-copy>p{font-size:12px;margin:10px 0;line-height:1.7}
.gift-format-rows .format-copy>.format-caption{font-size:10px;margin-bottom:0;opacity:.7}
.gift-format-rows .actions{padding-top:0;margin:12px 0 0}
.gift-format-rows .format-status{margin-top:8px}
.location-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.location-pair>article{display:flex;flex-direction:column;align-items:flex-start;background:white!important;border:1px solid #ded3ed;padding:24px;min-width:0}
.location-pair>article h3{overflow-wrap:anywhere}
.location-pair .button{margin-top:auto}
.location-pair .place-address{font-size:12px;margin:14px 0 18px}
.location-pair .location-opening-note{margin:7px 0 0}
@media(max-width:1050px){.group-event-card{grid-template-columns:125px minmax(0,1fr)}.group-event-body{padding:18px 15px}}
@media(max-width:760px){
 .group-events{padding-top:24px;padding-bottom:18px}
 .group-events>h2{font-size:27px;margin-bottom:16px}
 .group-events-grid{gap:10px}
 .group-event-card{display:flex;flex-direction:column}
 .group-event-photo img{height:112px;min-height:0;object-position:50% 65%}
 .group-event-body{padding:15px 12px;flex:1}
 .group-event-body .meta{font-size:8px;letter-spacing:.07em}
 .group-event-body h3{font-size:19px;line-height:1.2}
 .group-event-body>p:not(.meta){font-size:11px;margin:10px 0 14px;line-height:1.65}
 .group-event-body .button{align-self:stretch;font-size:10px;padding:10px 9px;line-height:1.5;min-height:50px;text-align:center}
 .gift-format-rows .gift-format-card{grid-template-columns:82px minmax(0,1fr);gap:14px;padding:16px 14px;border-radius:14px}
 .gift-format-rows .format-image,.gift-format-rows .format-image.paper{height:126px;padding:0}
 .gift-format-rows .format-heading h3{font-size:19px;line-height:1.2}
 .gift-format-rows .format-status{font-size:8px;padding:4px 7px}
 .gift-format-rows .format-copy>p{font-size:11px;line-height:1.6;margin:8px 0}
 .gift-format-rows .format-copy>.format-caption{font-size:9px}
 .gift-format-rows .button{font-size:10px;padding:10px 12px;line-height:1.5}
 .gift-formats-intro{margin-bottom:16px}
 .location-pair{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
 .location-pair>article{padding:16px 12px;border-radius:14px}
 .location-pair .meta{font-size:8px;letter-spacing:.06em;line-height:1.6;margin-bottom:10px}
 .location-pair h3{font-size:19px;line-height:1.25}
 .location-pair .place-address{font-size:10px;line-height:1.7;margin:12px 0 14px}
 .location-pair .opening-status{font-size:9px;padding:4px 7px;margin-top:10px;line-height:1.5}
 .location-pair .location-opening-note{font-size:10px!important;line-height:1.6}
 .location-pair .button{font-size:10px;padding:10px 9px;line-height:1.5;align-self:stretch;min-height:45px;text-align:center}
}

/* Crop the original photograph in the page, preserving faces and removing the mezzanine. */
.group-events-grid .group-event-card{display:flex;flex-direction:column}
.group-event-photo{height:210px;overflow:hidden;flex-shrink:0}
.group-event-photo img{height:100%;min-height:0}
.group-photo-crop{display:block;width:100%;height:100%;overflow:hidden}
.group-event-body{flex:1}
.gift>.group-photo-crop{height:auto;aspect-ratio:1086/968;border-radius:18px}
@media(max-width:760px){.group-event-photo{height:112px}}

/* Selected square framing: no stored objects above the group. */
.group-events-grid .group-event-card{display:grid;grid-template-columns:190px minmax(0,1fr);align-items:center}
.group-event-photo{height:auto;aspect-ratio:1/1;align-self:center}
.gift>.group-photo-crop{aspect-ratio:1/1}
@media(max-width:1050px){.group-events-grid .group-event-card{grid-template-columns:135px minmax(0,1fr)}}
@media(max-width:760px){.group-events-grid .group-event-card{display:flex;align-items:stretch}.group-event-photo{height:auto;width:100%;aspect-ratio:1/1}.group-event-body{flex:1}}

/* Distinct formula accents, with Premium as the featured experience. */
.formula-comparison{align-items:stretch;margin-top:24px;gap:18px}
.formula-comparison>article{background:white;border:1px solid #ddd2ed;border-top:5px solid #a18ebc;padding:24px 20px;display:flex;flex-direction:column;position:relative}
.formula-comparison>article.formula-premium{border:2px solid var(--purple);border-top:7px solid var(--purple);box-shadow:0 8px 22px #603bb414}
.formula-comparison>article.formula-prestige{border-top-color:#b48b28}
.formula-comparison .formula-prestige .eyebrow{color:#80601a}
.formula-comparison h3{font-size:24px;margin:6px 0 0}
.formula-favourite{display:inline-block;align-self:flex-start;background:var(--yellow);color:var(--ink);border-radius:30px;padding:4px 12px;font-size:10px;font-weight:700;margin:-9px 0 14px}
.formula-comparison .formula-price{font-size:11px;margin:18px 0 10px;color:var(--purple)}
.formula-price strong{font:700 30px Poppins;white-space:nowrap}
.formula-price small{display:block;font-size:10px}
.formula-comparison ul{padding-left:18px;font-size:12px;line-height:1.8;margin:12px 0 22px}
.formula-comparison .button{margin-top:auto;font-size:11px;padding:11px 15px}
.group-price-note{font-size:11px;line-height:1.7;color:#6a5b7e;margin:18px 0}
.group-models{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}
.group-model{border:1px solid #ded3ed;border-radius:15px;overflow:hidden;display:flex;flex-direction:column;background:white;min-width:0}
.group-model>img{height:210px;object-fit:cover}
.group-model>div{padding:18px;display:flex;flex-direction:column;flex:1}
.group-model h3{font-size:21px;margin:0}
.group-model p:not(.meta){font-size:12px;line-height:1.7;margin:12px 0}
.group-model strong{font:600 17px Poppins;color:var(--purple);margin-top:auto}
.group-model small{display:block;font:400 10px Montserrat}
.group-model .textlink{align-self:flex-start;margin-top:12px}
.event-estimator{border-top:1px solid #e5ddec}
.estimate-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:start;margin-top:22px}
#event-estimate-form{min-width:0}
#event-estimate-form .form-row{margin-bottom:16px}
#event-estimate-form label{font-size:11px;font-weight:600;min-width:0}
#event-estimate-form select,#event-estimate-form input{font:12px Montserrat;width:100%;min-width:0;padding:12px 10px}
.estimate-result{border:2px solid var(--purple);border-radius:16px;padding:24px;min-width:0;background:white}
#estimate-total{display:block;font:700 30px Poppins;color:var(--purple);line-height:1.25;margin:12px 0 20px}
#estimate-breakdown{grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;font-size:11px;line-height:1.5;margin:0}
#estimate-breakdown dt,#estimate-breakdown dd{margin:0}
#estimate-breakdown dd{text-align:right;font-weight:600}
#estimate-note{font-size:10px;line-height:1.7;margin:18px 0}
.estimate-result .note{font-size:9px;line-height:1.6}
@media(max-width:760px){
 .group-models{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:16px 0}
 .group-model>img{height:145px}
 .group-model>div{padding:14px 12px}
 .group-model .meta{font-size:8px;letter-spacing:.04em;line-height:1.5}
 .group-model h3{font-size:19px;margin-top:0}
 .group-model p:not(.meta){font-size:11px}
 .group-model strong{font-size:15px}
 .group-model .textlink{font-size:10px;line-height:1.5}
 .formula-comparison{gap:16px}
 .formula-comparison>article{padding:20px}
 .formula-comparison h3{font-size:24px}
 .formula-comparison ul{margin-bottom:18px}
 .formula-comparison .button{align-self:flex-start}
 .estimate-layout{grid-template-columns:1fr;gap:18px}
 #event-estimate-form .form-row{grid-template-columns:1fr 1fr;gap:12px}
 .estimate-result{padding:20px}
 #estimate-total{font-size:27px}
}
@media(max-width:360px){#event-estimate-form .form-row{grid-template-columns:1fr}.group-model>img{height:125px}}

.mobile-options{border-top:1px solid #ded3ed;margin-top:18px;padding-top:18px}.mobile-options[hidden]{display:none}.mobile-workshop strong{font-family:Poppins}

/* Keep native date controls inside the contact form on narrow screens, including iOS. */
.contact-grid>*{min-width:0}
#enquiry{min-width:0;max-width:100%}
#enquiry .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
#enquiry label{display:block;min-width:0;max-width:100%}
#enquiry input,#enquiry select,#enquiry textarea{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
#enquiry input[type="date"]{min-inline-size:0;inline-size:100%}
@media(max-width:760px){#enquiry .form-row{grid-template-columns:minmax(0,1fr);gap:16px}}

/* One group photograph with two equally visible audience links underneath. */
.group-shared-feature{max-width:700px;margin:0 auto}
.group-shared-photo{width:min(100%,360px);aspect-ratio:1/1;margin:0 auto 18px;overflow:hidden;border-radius:18px}
.group-audience-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.group-audience-links>a{border:1px solid #ded3ed;border-radius:14px;padding:20px;display:flex;flex-direction:column;align-items:flex-start;min-width:0;background:white}
.group-audience-links h3{font-size:21px;color:var(--purple);line-height:1.25}
.group-audience-links p{font-size:12px;line-height:1.65;margin:10px 0 14px}
.group-audience-links span{font-size:11px;font-weight:600;color:var(--purple);margin-top:auto;border-bottom:1px solid #a993ca}
.group-audience-links>a:hover{border-color:var(--purple)}
.group-audience-links>a:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
@media(max-width:760px){.group-shared-photo{margin-bottom:12px}.group-audience-links{gap:10px}.group-audience-links>a{padding:16px 12px}.group-audience-links h3{font-size:18px}.group-audience-links p{font-size:10px;margin:9px 0 12px}.group-audience-links span{font-size:10px}}

/* Christmas is visible early and compares two offers on the same row. */
.noel-priority{padding-top:25px;padding-bottom:20px;border-top:1px solid #e5ddec;border-bottom:1px solid #e5ddec}
.noel-priority .compact-noel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.noel-priority .compact-noel-heading h2{font-size:29px;margin:0}
.noel-priority .compact-noel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.noel-priority .compact-noel-grid>div{min-width:0}
.noel-priority .compact-noel-grid .meta{font-size:9px;letter-spacing:.1em;margin:0 0 10px}
.noel-priority .compact-noel-grid h3{font-size:23px;line-height:1.3;margin:0}
.noel-priority .compact-noel-code{border-top:0;border-left:1px solid #ded3ed;padding:0 0 0 25px}
.noel-priority .compact-noel-code h3{font-size:34px}
.noel-priority .compact-noel-grid p:not(.meta){font-size:12px;line-height:1.65;margin:10px 0}
.noel-priority .copy-code{display:inline-flex;max-width:100%;flex-wrap:wrap;gap:8px;padding:8px 10px;line-height:1.4}
.noel-priority .copy-code code{font-size:15px}
.noel-priority .compact-noel-validity{font-size:10px;line-height:1.6;opacity:.7;margin:14px 0 0}
.how-compact{padding:30px 0}
.how-compact h2{font-size:29px}
.how-compact .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:20px}
.how-compact .steps>div{min-width:0}
.how-compact .steps span{font-size:31px;line-height:1.2}
.how-compact .steps h3{font-size:20px;margin:9px 0}
.how-compact .steps p{font-size:12px;line-height:1.6;margin:0}
@media(max-width:760px){
 .noel-priority{padding-top:20px;padding-bottom:16px}
 .noel-priority .compact-noel-heading{gap:10px;margin-bottom:16px}
 .noel-priority .compact-noel-heading h2{font-size:25px}
 .noel-priority .compact-noel-heading .textlink{font-size:9px;text-align:right;max-width:85px;line-height:1.6}
 .noel-priority .compact-noel-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .noel-priority .compact-noel-code{border-top:0;border-left:1px solid #ded3ed;padding:0 0 0 12px}
 .noel-priority .compact-noel-grid .meta{font-size:8px;letter-spacing:.05em;line-height:1.5;margin-bottom:8px}
 .noel-priority .compact-noel-grid h3{font-size:20px}
 .noel-priority .compact-noel-code h3{font-size:29px}
 .noel-priority .compact-noel-grid p:not(.meta){font-size:10px;margin:8px 0}
 .noel-priority .compact-noel-duo>.textlink{font-size:10px;line-height:1.6}
 .noel-priority .copy-code{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:7px 8px;margin:5px 0}
 .noel-priority .copy-code code{font-size:12px;letter-spacing:0;white-space:nowrap}
 .noel-priority .copy-code button{font-size:10px;padding:3px 0;min-height:27px;border:0}
 .noel-priority .compact-noel-validity{font-size:9px;margin-top:12px}
 .how-compact{padding:23px 0}
 .how-compact h2{font-size:26px}
 .how-compact .steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:17px}
 .how-compact .steps span{font-size:27px}
 .how-compact .steps h3{font-size:13px;letter-spacing:-.03em;line-height:1.35;margin:7px 0}
 .how-compact .steps p{font-size:10px;line-height:1.6}
}

/* Christmas offer highlight in the brand purple, white and yellow palette. */
.noel-priority.noel-coloured{background:var(--purple);color:white;border-color:var(--purple);padding-top:27px;padding-bottom:22px}
.noel-coloured .compact-noel-heading h2{color:white}
.noel-coloured .compact-noel-heading .hand{color:var(--yellow)}
.noel-coloured .compact-noel-grid h3{color:var(--yellow)}
.noel-coloured .compact-noel-grid .meta{color:var(--lilac)}
.noel-coloured .compact-noel-code{background:transparent;border-left-color:#ffffff55}
.noel-coloured .textlink{color:white;border-bottom-color:#ffffff88}
.noel-coloured .copy-code{background:white;color:var(--purple);border-color:white}
.noel-coloured .copy-code code,.noel-coloured .copy-code button{color:var(--purple)}
.noel-coloured .copy-status{color:white!important}
.noel-coloured .compact-noel-validity{color:white;opacity:.85}
@media(max-width:760px){.noel-priority.noel-coloured{padding-top:22px;padding-bottom:18px}}

.button[hidden]{display:none}

/* Comfortable field text on mobile, including native iPhone controls. */
@media(max-width:760px){#enquiry input,#enquiry select,#enquiry textarea,#event-estimate-form input,#event-estimate-form select{font-size:16px}}

/* Reservation: the same model cards as the home page, with a direct booking action. */
.booking-card{display:flex;flex-direction:column;min-width:0}
.booking-card>a{flex:1}
.booking-card-action{padding:0 17px 20px}
.booking-card-action .button{display:flex;width:100%;padding:12px 10px;text-align:center;line-height:1.5}
.booking-models .card-bottom{align-items:flex-start;flex-direction:column;gap:6px}
.booking-models .card-bottom strong{line-height:1.5}
.booking-models .card-bottom span{font-size:10px;color:var(--purple)}
@media(max-width:760px){.booking-card-action{padding:0 12px 15px}.booking-card-action .button{font-size:11px}}

.legal-content{max-width:1000px}.legal-details{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;gap:10px 24px;margin:24px 0}.legal-details dt{font-weight:600}.legal-details dd{margin:0;overflow-wrap:anywhere}.legal-content p{max-width:850px}.legal-content .textlink{font-size:inherit;overflow-wrap:anywhere}@media(max-width:600px){.legal-details{grid-template-columns:1fr;gap:4px}.legal-details dd{margin-bottom:12px}.legal-content h2{font-size:25px}}
