@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--orange:#ff651f;--ink:#161616;--paper:#fff;--muted:#636363}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font:16px/1.6 'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #e04400;outline-offset:5px}.topbar{background:var(--ink);color:white;padding:10px 5%;display:flex;justify-content:space-between;font-size:12px;font-weight:700;letter-spacing:1.5px}.topbar span{font-weight:400;letter-spacing:0}header{padding:22px 5%;display:flex;align-items:center;gap:25px;border-bottom:1px solid #ddd;background:white}.brand{font:900 34px/.8 'Barlow Condensed',Impact,sans-serif;position:relative;display:inline-block;letter-spacing:-1px}.brand span{font:12px Arial;position:absolute;right:-13px;top:0}nav{display:flex;gap:30px;margin:auto;font-size:14px;font-weight:600}nav a:hover{color:#c63e00}.basket-button{border:1px solid #ccc;padding:10px 16px;background:white;border-radius:30px;font-size:14px}.basket-button span{background:var(--ink);color:white;border-radius:50%;display:inline-grid;place-items:center;min-width:24px;margin-left:8px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px}.hero-copy{padding:65px 10% 24px;display:flex;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;margin:0 0 20px}h1,h2,.giant-type,.type-tile b{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-weight:800;letter-spacing:-1.5px;line-height:.98}h1{font-size:clamp(65px,7.4vw,112px);margin:0 0 25px}em{font-style:normal;color:var(--orange)}.hero-copy>p:not(.eyebrow){font-size:19px;max-width:360px;color:#555;margin:0 0 26px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.button{display:inline-block;border:0;padding:15px 23px;background:var(--orange);color:var(--ink);font-weight:700;text-align:center;border-radius:3px}.button:hover{background:#ed5410}.textlink{border:0;background:none;padding:0;border-bottom:1px solid currentColor;font-weight:600;border-radius:0}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ddd;padding-top:16px;margin-top:auto;font-size:12px;letter-spacing:1px;gap:10px}.hero-photo{position:relative;min-height:590px;overflow:hidden;background:#c5c9d2}.hero-photo img{height:100%;width:100%;object-fit:cover;position:absolute;object-position:center 44%}.photo-label{position:absolute;bottom:25px;left:25px;color:white;background:var(--ink);font-size:12px;padding:9px 14px;letter-spacing:1px}.ticker{background:var(--orange);padding:17px 5%;display:flex;justify-content:space-between;gap:16px;font:700 22px 'Barlow Condensed',Impact,sans-serif;letter-spacing:1px}.section{padding:78px 5%;scroll-margin-top:15px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}h2{font-size:clamp(45px,5vw,72px);margin:0}h3{font-size:21px;line-height:1.3;margin:0 0 14px}.section-heading>p{color:var(--muted);max-width:310px;margin:0}.products{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.product-visual,.type-tile{height:380px;position:relative;overflow:hidden}.product-visual img{width:100%;height:100%;object-fit:cover;object-position:center 40%}.tag{position:absolute;top:15px;left:15px;background:white;font-size:12px;font-weight:700;padding:6px 10px}.type-tile{padding:27px;display:flex;flex-direction:column;justify-content:space-between}.type-tile small,.type-tile span{font-size:12px;letter-spacing:1px;font-weight:700}.type-tile b{font-size:66px;line-height:.9;letter-spacing:0}.orange{background:var(--orange)}.dark{background:var(--ink);color:white}.dark b{color:var(--orange)}.product-title{display:flex;justify-content:space-between;gap:10px;margin-top:20px}.product-title h3{font-size:19px;margin:0}.product p{color:var(--muted);font-size:14px;min-height:45px;margin:10px 0 15px}.outline{background:white;border:1px solid #222;padding:11px 20px;width:100%;font-weight:600}.outline:hover{background:var(--ink);color:white}.small-note{color:var(--muted);font-size:14px;margin-top:24px}.personal{background:#f1f1f1;display:grid;grid-template-columns:1fr 1fr;gap:9%}.personal h2{margin-bottom:25px}.personal>div>p:not(.eyebrow){max-width:400px;color:#555}.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0}.pill-row span{border:1px solid #aaa;padding:6px 12px;border-radius:30px;font-size:12px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{font-size:14px;font-weight:600;display:block;margin-bottom:15px}input,select,textarea{display:block;width:100%;padding:12px;border:1px solid #bbb;background:white;margin-top:6px;color:#161616;min-width:0;border-radius:3px}textarea{min-height:100px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--orange);outline-offset:1px}.form-note{font-size:14px;color:#626262;line-height:1.5;margin:14px 0}.magnet-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:6%;align-items:center}.magnet-story{background:var(--ink);color:white;padding:38px}.giant-type{font-size:clamp(65px,8vw,110px)}.magnet-story p{max-width:400px}.magnet-story .pill-row span{border-color:#555}.magnet-buy h3{font-size:28px}.price-line{display:flex;align-items:baseline;gap:12px;margin:25px 0}.price-line b{font:700 55px 'Barlow Condensed',Impact,sans-serif}.price-line span{margin-right:15px;color:#666}.business-note{border-top:1px solid #ccc;margin-top:28px;padding-top:22px}.business-note h4{margin:0;font-size:18px}.business-note p{font-size:14px}.event{background:var(--orange);display:grid;grid-template-columns:1fr 1fr;gap:9%}.event h2{font-size:clamp(65px,7.5vw,108px);line-height:.9}.event em{color:white}.event-copy>p{max-width:400px}.event .pill-row span{border-color:#923308}.event form{background:white;padding:30px}.event .form-note{color:#444}.how{padding-top:60px;padding-bottom:60px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps span{color:#c4440c;font:700 36px 'Barlow Condensed',Impact,sans-serif}.steps h3{margin:8px 0}.steps p{color:#666;font-size:14px;margin:0}footer{background:var(--ink);color:white;padding:55px 5% 20px;display:grid;grid-template-columns:1fr 2fr 1fr;gap:40px}footer .brand{font-size:46px;align-self:start;justify-self:start}footer h3{font-size:24px}footer p{font-size:14px;color:#aaa}footer>div:last-of-type{display:flex;flex-direction:column;align-items:start;gap:10px;font-size:14px}.copyright{grid-column:1/-1;border-top:1px solid #444;padding-top:20px;margin:0}dialog{border:0;padding:28px;width:min(570px,calc(100% - 26px));max-height:90vh;border-radius:5px;box-shadow:0 20px 100px #0005}dialog::backdrop{background:#0009}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:20px}.dialog-head h2{font-size:38px}.dialog-head .eyebrow{margin:0}.close{font-size:30px;line-height:1;background:none;border:0;padding:4px 8px}#product-name{font-size:38px;margin-bottom:25px}dialog .button{width:100%}.cart-row{border-bottom:1px solid #ddd;padding:15px 0}.cart-row h3{font-size:18px;margin:0}.cart-row p{font-size:14px;color:#666;margin:4px 0;overflow-wrap:anywhere}.cart-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px}.remove{background:none;border:0;text-decoration:underline;font-size:14px}.quantity{display:flex;align-items:center;gap:12px}.quantity button{width:32px;height:32px;background:#eee;border:0}.total{display:flex;justify-content:space-between;font-size:22px;font-weight:700;margin:20px 0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;padding:12px 22px;border-radius:4px;z-index:10;display:none;max-width:90%;text-align:center}#privacy-dialog p{font-size:16px}body:has(dialog[open]){overflow:hidden}@media(min-width:1500px){main,header,footer,.topbar{padding-left:max(5%,calc((100vw - 1440px)/2));padding-right:max(5%,calc((100vw - 1440px)/2))}.hero-copy{padding-left:10%}.hero{margin-left:-5%;margin-right:-5%}}@media(max-width:850px){header{flex-wrap:wrap;padding:20px 5%}nav{order:3;width:100%;gap:20px;overflow-x:auto;margin-top:10px;padding-bottom:4px;white-space:nowrap}.basket-button{margin-left:auto}.hero{min-height:0}.hero-copy{padding:40px 10% 24px}h1{font-size:65px}.hero-photo{min-height:500px}.hero-bottom{margin-top:35px}.ticker{font-size:18px;flex-wrap:wrap;justify-content:center}.products{gap:16px}.product-visual,.type-tile{height:290px}.type-tile b{font-size:48px}.type-tile{padding:20px}.personal,.event{gap:5%}.section{padding:55px 5%}.event form{padding:22px}.fields{grid-template-columns:1fr}.event h2{font-size:75px}.magnet-story{padding:25px}footer{gap:25px}}@media(max-width:600px){.topbar{font-size:10px}.topbar span{display:none}.brand{font-size:30px}nav{gap:20px;font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:35px 6% 25px}.hero h1{font-size:77px}.hero-copy>p:not(.eyebrow){font-size:17px}.hero-bottom{margin-top:32px}.hero-photo{min-height:400px;max-height:400px}.hero-photo img{object-position:center 35%}.ticker{font-size:16px;gap:10px}.ticker span{display:none}.section-heading{display:block}.section-heading>p{margin-top:18px}.products{grid-template-columns:1fr;gap:35px}.product-visual,.type-tile{height:360px}.type-tile b{font-size:70px}.product p{min-height:0}.personal,.event,.magnet-grid{grid-template-columns:1fr;gap:35px}.personal h2{font-size:59px}.fields{grid-template-columns:1fr 1fr}.giant-type{font-size:91px}.event h2{font-size:87px}.event form{padding:22px}.steps{grid-template-columns:1fr;gap:25px}.steps>div{border-top:1px solid #ddd;padding-top:15px}footer{grid-template-columns:1fr 1fr;gap:30px}footer>.brand{grid-column:1/-1}.actions{gap:18px}.photo-label{font-size:10px}dialog{padding:22px}.dialog-head h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(max-width:350px){.fields{grid-template-columns:1fr}.hero h1{font-size:64px}}

/* Collection photographs */
.collection-gallery{margin-top:45px;padding-top:35px;border-top:1px solid #ddd}.gallery-heading{display:flex;justify-content:space-between;align-items:baseline;gap:25px;margin-bottom:22px}.gallery-heading h3{margin:0;font-size:26px}.gallery-heading p{margin:0;color:var(--muted);font-size:14px;max-width:430px}.clothing-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.collection-gallery figure{margin:0;min-width:0}.collection-gallery figure a{display:block;background:#eee;overflow:hidden}.collection-gallery img{display:block;width:100%;height:auto}.clothing-gallery figure:not(.collection-wide) img{aspect-ratio:1;object-fit:contain}.collection-wide{grid-column:1/-1}.collection-gallery figcaption{padding:16px 0 4px}.collection-gallery h4{font-size:18px;margin:0 0 4px}.collection-gallery figcaption p{font-size:14px;color:var(--muted);margin:0}.magnet-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;align-items:start}.collection-product{background:#efece7}.collection-product a{display:flex;align-items:center;height:100%}.collection-product img{object-fit:contain;object-position:center}.collection-product .tag{pointer-events:none}@media(max-width:600px){.gallery-heading{display:block}.gallery-heading p{margin-top:10px}.clothing-gallery{grid-template-columns:1fr;gap:25px}.collection-wide{grid-column:auto}.magnet-gallery{grid-template-columns:1fr;gap:28px}.collection-gallery{margin-top:35px;padding-top:28px}}

.save-date-product{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;margin-top:45px;padding-top:40px;border-top:1px solid #ddd}.save-date-photo{display:block}.save-date-photo img{display:block;width:100%;height:auto}.save-date-copy h3{font-size:28px}.save-date-copy .price-line{flex-wrap:wrap;gap:10px}.save-date-copy .price-line b{font-size:48px}.save-date-copy>p:not(.eyebrow):not(.form-note){color:var(--muted)}@media(max-width:850px){.save-date-product{grid-template-columns:1fr;gap:24px}}

.honeypot{position:absolute;left:-10000px;opacity:0;pointer-events:none}.submission-message{font-size:16px;line-height:1.5;white-space:pre-line;color:#b33a08}.submission-message:empty{display:none}.submission-message.success{color:#174e35;border:1px solid #174e35;padding:14px;background:#f0f8f2}.button:disabled{opacity:.6;cursor:wait}[hidden]{display:none!important}

.collection-title{font-size:30px;margin:45px 0 24px}.separate-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.design-card{display:flex;flex-direction:column;min-width:0}.design-card .product-title{align-items:start}.design-card .product-title strong{white-space:nowrap;font-size:15px}.design-card .outline{margin-top:auto}.design-strip{aspect-ratio:0.57;overflow:hidden;position:relative;background:#eee}.design-strip img{display:block;position:absolute;top:-10%;width:500%;max-width:none;height:auto;transform:translateX(calc(var(--slot)*-20%))}.design-photo{aspect-ratio:1;overflow:hidden;background:#f4f4f4}.design-photo img{width:100%;height:100%;object-fit:contain;display:block}.magnet-designs .design-photo{aspect-ratio:1}.magnet-crop{aspect-ratio:1;position:relative;overflow:hidden;background:white}.magnet-crop img{position:absolute;width:357%;max-width:none;height:auto;left:var(--left);top:-92%}@media(max-width:850px){.separate-products{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.separate-products{grid-template-columns:1fr}.design-strip{aspect-ratio:.54}.collection-title{margin-top:36px}.design-card .product-title h3{font-size:21px}}

.collection-nav{display:flex;gap:12px;margin:25px 0 45px;flex-wrap:wrap}.collection-nav a{border:1px solid #222;border-radius:3px;padding:12px 20px;font-weight:700;font-size:16px}.collection-nav a:hover{background:var(--ink);color:white}.clothing-collection{border-top:1px solid #ccc;padding-top:42px;margin-top:55px;scroll-margin-top:25px}.clothing-collection-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.clothing-collection-head h2{font-size:55px}.subcollection-nav{display:flex;gap:18px;font-weight:600}.subcollection-nav a{border-bottom:1px solid #222}.collection-nav{margin-left:0;margin-right:0}nav.collection-nav{overflow:visible;white-space:normal;order:initial;width:auto}.clothing-collection .collection-title{scroll-margin-top:25px}@media(max-width:600px){.clothing-collection-head{display:block}.clothing-collection-head h2{font-size:47px}.subcollection-nav{margin-top:15px}.collection-nav a{flex:1;min-width:140px;text-align:center}.clothing-collection{margin-top:40px;padding-top:30px}}

.category-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.category-card{display:flex;flex-direction:column;border:1px solid #ddd}.category-photo,.category-card .type-tile{height:390px;overflow:hidden;position:relative;background:#eee}.category-photo img{width:100%;height:100%;object-fit:cover;object-position:center 42%}.category-women img{position:absolute;width:500%;max-width:none;height:auto;left:0;top:-7%}.category-caption{padding:24px}.category-caption h3{font-size:25px;margin-bottom:8px}.category-caption p{color:#666;margin:0 0 16px}.category-caption span{display:inline-block;border-bottom:1px solid;font-weight:700}.home-feature{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;border-top:1px solid #ddd}.home-feature h2{margin-bottom:25px}.home-feature p{max-width:430px;color:#555;margin-bottom:25px}.feature-photo img{display:block;width:100%;height:auto}.feature-note{padding:35px;background:#f2f2f2}.event-teaser{align-self:center;max-width:420px}.event-teaser h3{font-size:30px}.event-link{background:var(--ink);color:white}.event-link:hover{background:#333}.shop-breadcrumb{font-size:14px;color:#555;margin:0 0 35px;grid-column:1/-1}.shop-breadcrumb a{text-decoration:underline}.shop-collection{margin-top:0;border-top:0}.shop-collection .clothing-collection-head h2{font-size:clamp(50px,5vw,75px)}@media(max-width:850px){.category-photo,.category-card .type-tile{height:320px}.category-caption{padding:18px}}@media(max-width:600px){.category-cards{grid-template-columns:1fr}.category-photo,.category-card .type-tile{height:390px}.home-feature{grid-template-columns:1fr;gap:28px}.category-caption h3{font-size:26px}.event-teaser{margin-top:25px}}

.magnet-logo-photo{background:white}.magnet-logo-photo img{object-fit:contain;padding:22px}

/* Print details keep each design legible beside its garment sample. */
.design-detail{position:relative;aspect-ratio:1;overflow:hidden;background:#eee;margin:12px 0 0}
.design-detail img{position:absolute;display:block;width:750%;max-width:none;height:auto;left:calc(-25% - var(--slot)*150%);top:-123%}
.design-card:has(img[src="/hoodie-collection.webp"]) .design-detail img{top:-126%}

.hero h1.clear-shop-heading{font-size:clamp(38px,4.3vw,68px);line-height:1.06;letter-spacing:-.035em;overflow-wrap:normal}.hero-copy>p:not(.eyebrow){max-width:430px}@media(max-width:600px){.hero h1.clear-shop-heading{font-size:clamp(34px,8.5vw,51px)}}

.tshirt-bar{border-top:1px solid #ddd}.tshirt-bar .steps{margin:35px 0}.tshirt-bar>p{max-width:680px}.tshirt-bar-booking{margin-top:30px;display:flex;flex-wrap:wrap;align-items:center;gap:24px}.tshirt-bar-booking p{max-width:650px;margin:0}.tshirt-bar-booking .button{flex-shrink:0}.tshirt-bar h2{font-size:clamp(42px,6vw,78px)}

/* Individual files avoid oversized, positioned lazy-loaded collection images. */
.individual-garment{aspect-ratio:.54;overflow:hidden;background:#eee}
.individual-detail{aspect-ratio:1;overflow:hidden;background:#eee;margin:12px 0 0}
.individual-garment img,.individual-detail img{display:block;position:static;width:100%;height:100%;max-width:100%;object-fit:cover;transform:none}
.individual-detail img{object-fit:contain}

#rubber-duck-club > a{display:block;width:100%;max-width:340px;justify-self:center;}
#rubber-duck-club > a img{display:block;width:100%;height:auto;max-height:460px;object-fit:contain;border-radius:12px;}
@media(max-width:700px){#rubber-duck-club > a{max-width:280px;}}

/* Magnet Booth colours match the teal logo. */
#magnets,#events,.magnet-theme{--orange:#00bdbb;}
#events .pill-row span{border-color:#007775;}
#magnets .button:hover,#events .button:not(.event-link):hover,.magnet-theme .button:hover{background:#009c9a;}
#magnets a:focus-visible,#events a:focus-visible,#events button:focus-visible,.magnet-theme a:focus-visible,.magnet-theme button:focus-visible{outline-color:#007775;}
.magnet-theme nav a:hover{color:#007775;}

#request-quote{--orange:#00bdbb;border-top:1px solid #009c9a;}
#request-quote .button:hover{background:#009c9a;}
#request-quote button:focus-visible{outline-color:#007775;}

.magnet-upload{--orange:#00bdbb;background:#effafa;border-bottom:1px solid #cce8e7;}.magnet-upload h2{font-size:clamp(40px,5vw,65px);margin-bottom:20px;}.magnet-upload>p{max-width:760px;}.upload-dropzone{max-width:760px;border:2px dashed #008b89;border-radius:12px;padding:24px;background:white;}.upload-dropzone input{border:0;padding:12px 0;}.magnet-upload .form-note{display:block;margin-top:12px;}

.magnet-product-upload{padding:16px;background:#effafa;border:1px dashed #008b89;border-radius:8px;margin:18px 0;}.magnet-product-upload label{font-size:14px;}.magnet-product-upload input{max-width:100%;font-size:13px;padding:8px;}.magnet-product-upload small{display:block;color:#555;}.magnet-product-upload .form-note{min-height:0;margin:8px 0;font-size:12px;overflow-wrap:anywhere;}

.magnet-guide-prices{--orange:#00bdbb;background:#effafa;}.magnet-guide-prices h2{font-size:clamp(42px,5vw,68px);margin-bottom:20px;}.magnet-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:30px 0;}.magnet-package{padding:28px;border:1px solid #a9d8d7;border-radius:12px;background:white;}.magnet-package .package-price{font:bold 48px/1.1 'Barlow Condensed',Arial,sans-serif;margin:20px 0;color:#006b69;}.magnet-guide-prices .button:hover{background:#009c9a;}@media(max-width:700px){.magnet-package-grid{grid-template-columns:1fr;}}

.home-magnet-heading-logo{display:block;width:100%;max-width:100%;height:auto;margin:0 0 24px}

.home-magnet-section{display:block}.home-magnet-section>div{max-width:650px;margin:0 auto}.home-magnet-section .home-magnet-fridge{margin:0 0 25px}.home-magnet-section p{max-width:none}

.tee-colour-choice{display:flex;align-items:center;gap:12px;margin:15px 0;font-weight:600}.tee-colour-choice select{flex:1;min-width:0;padding:10px;background:white;border:1px solid #bbb;border-radius:3px;color:var(--ink)}

.mens-back-fit{position:relative;aspect-ratio:1/2;overflow:hidden;background:#f4f4f4}.mens-back-fit img{display:block;position:absolute;top:0;left:0;width:300%;max-width:none;height:100%;object-fit:fill}

.mens-variant-sheet{position:relative;overflow:hidden;background:#f4f4f4;aspect-ratio:1/2}
.mens-variant-sheet img{display:block;position:absolute;top:0;left:0;max-width:none;object-fit:fill}

.policy-header{display:flex;justify-content:space-between;align-items:center;padding:24px 6%;border-bottom:1px solid #ddd}.policy-main{max-width:960px;margin:0 auto;padding:40px 24px 64px}.policy-main nav,.policy-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:32px}.policy-main nav a,.policy-main article a,.form-note a{color:#006b69;text-decoration:underline}.policy-main h1{font-size:clamp(40px,6vw,68px);line-height:1.05;margin:16px 0 32px}.policy-main h2{font-family:inherit;font-size:24px;line-height:1.3;margin:32px 0 12px}.policy-main p,.policy-main blockquote{line-height:1.75;margin:12px 0;overflow-wrap:anywhere}.policy-main blockquote{padding:24px;background:#effafa;border-left:4px solid #008b89}.policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.policy-card{display:block;padding:24px;border:1px solid #a9d8d7;border-radius:10px;background:#effafa;text-decoration:none!important}.policy-card h2{margin:0 0 18px}.policy-save{margin-top:40px!important}@media(max-width:600px){.policy-grid{grid-template-columns:1fr}}@media print{.policy-header,.policy-main nav,footer,.policy-save,#clear-local-photos{display:none!important}.policy-main{max-width:none;padding:0}.policy-main article a{color:black}.policy-main h1{font-size:30px}.policy-main h2{break-after:avoid}.policy-main p{font-size:11pt}}

.payment-checkbox{display:flex;gap:12px;align-items:flex-start}.payment-checkbox input{width:auto;margin-top:5px}#payment-dialog{width:min(94vw,560px)}#apple-pay-buttons apple-pay-button{display:block;width:100%;height:48px;margin:18px 0}.order-payment{padding:12px;background:#effafa;font-weight:600}

#payment-setup-form{min-width:0;max-width:100%}#payment-setup-form input:not([type=checkbox]),#payment-setup-form select{min-width:0;width:100%;max-width:100%;box-sizing:border-box}#payment-setup-form .button{max-width:100%;white-space:normal;overflow-wrap:anywhere}#payment-setup-form .payment-checkbox input{flex:0 0 auto}

.kids-preview-note{font-size:12px;color:#555;margin:0 0 14px;min-height:0}.tee-colour-choice select[data-kids-colour]{width:100%;min-width:0}

.kids-colour-preview{position:relative;aspect-ratio:1;overflow:hidden}.kids-colour-preview.kids-colour-sheet img{position:absolute;left:0;top:0;width:300%;max-width:none;height:200%;object-fit:fill;display:block}

.fun-photo{width:100%;aspect-ratio:1225/1284;background-size:cover;background-position:center;background-repeat:no-repeat;margin-bottom:18px}.fun-card label{margin-bottom:16px}.fun-card details{margin-top:18px}.fun-card summary{cursor:pointer;text-decoration:underline}.fun-original{display:block;width:100%;height:auto;margin-top:12px}.fun-card .product-title h3{font-size:22px}.fun-card .outline{margin-top:auto}.category-cards{grid-template-columns:repeat(4,minmax(0,1fr))}@media(max-width:1000px){.category-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.category-cards{grid-template-columns:1fr}}

.fun-category-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.fun-category-photo{aspect-ratio:2/3;background-size:300% auto;background-position:50% 0%;background-repeat:no-repeat}.fun-category-cards h2{font-size:28px}@media(max-width:600px){.fun-category-cards{grid-template-columns:1fr}}

/* Complete collection navigation: visible at the top without sideways scrolling. */
.shop-header{flex-wrap:wrap;gap:18px;position:relative;z-index:20}.shop-header .basket-button{margin-left:auto}.full-navigation{order:3;flex:0 0 100%;width:100%;display:flex;flex-wrap:wrap;align-items:flex-start;gap:8px;margin:5px 0 0;padding:0;overflow:visible;white-space:normal;font-size:14px}.shop-menu{position:relative;max-width:100%}.shop-menu summary,.shop-menu-link{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;border:1px solid #ddd;border-radius:4px;background:#faf8f5;color:var(--ink);font-weight:700;cursor:pointer;list-style:none}.shop-menu summary::-webkit-details-marker{display:none}.shop-menu summary::after{content:'▾';font-size:12px;margin-left:auto}.shop-menu[open] summary{background:var(--ink);color:white}.shop-menu-panel{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:240px;max-width:320px;padding:8px;background:white;border:1px solid #ddd;box-shadow:0 10px 25px #0002;border-radius:5px}.shop-menu:last-child .shop-menu-panel{left:auto;right:0}.shop-menu-panel a{display:block;padding:12px 14px;line-height:1.35;border-radius:3px}.shop-menu-panel a:hover,.shop-menu-panel a:focus-visible{background:#fff0e6;color:#9c3300}.full-navigation summary:focus-visible,.full-navigation a:focus-visible{outline:3px solid #006b69;outline-offset:3px}[id^="magnet-design-"]{scroll-margin-top:20px}
@media(max-width:850px){.full-navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;white-space:normal;overflow:visible}.shop-menu,.shop-menu-link{min-width:0}.shop-menu summary,.shop-menu-link{height:100%;font-size:13px;padding:11px 10px;line-height:1.3}.shop-menu[open]{grid-column:1/-1}.shop-menu-panel,.shop-menu:last-child .shop-menu-panel{position:static;min-width:0;max-width:none;width:100%;margin-top:4px;box-shadow:none}.shop-menu-panel a{min-height:44px}.shop-header{padding-top:18px;padding-bottom:18px}}

.owner-story{background:#f2efe7;border-top:1px solid rgba(32,37,32,.12)}
.owner-story h2{font-size:clamp(2rem,5vw,4rem);margin-bottom:24px}
.owner-paragraph{max-width:850px;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.8}
.owner-signature{margin-top:24px;font-weight:700}

.story-intro{background:#f2efe7}.story-intro h1{font-size:clamp(2.6rem,7vw,6rem);line-height:1.02;letter-spacing:-.04em;margin:20px 0 28px}.story-intro h1 em{color:#e9632a}.story-lead{max-width:700px;font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.6}.story-split{display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center}.story-page h2{font-size:clamp(2rem,4vw,3.6rem);line-height:1.1;letter-spacing:-.025em;margin-bottom:24px}.story-page p{line-height:1.8}.story-split figure{margin:0}.story-split img{display:block;width:100%;border-radius:8px;max-height:550px;object-fit:cover}.story-split figcaption{font-size:.85rem;margin-top:12px}.story-magnets{background:#e8efeb}.story-split .story-booth-logo{object-fit:contain;background:white;width:155px;height:155px;margin-bottom:20px}.story-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:24px}.story-values{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.story-values article{border-top:3px solid #e9632a;padding-top:20px}.story-values h3{font-size:1.3rem}.story-page .owner-paragraph{max-width:900px}@media(max-width:760px){.story-split,.story-values{grid-template-columns:1fr;gap:30px}.story-split img{max-height:430px}.story-actions .button{width:100%;text-align:center}}

.christmas-photo{aspect-ratio:2/3;background:#f2e9da;overflow:hidden}.christmas-photo img{display:block;width:100%;height:100%;object-fit:cover}.christmas-card .product-title h3{font-size:1.25rem}.christmas-teaser{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center;background:#e9eee7}.christmas-teaser h2{font-size:clamp(2rem,5vw,4rem);line-height:1.1}.christmas-teaser img{width:100%;max-height:540px;object-fit:cover;object-position:center 30%;border-radius:8px}.christmas-teaser p{max-width:650px}@media(max-width:700px){.christmas-teaser{grid-template-columns:1fr;gap:24px}.christmas-teaser img{max-height:420px}}

.reviews-intro,.home-reviews{background:#f2efe7}.reviews-intro h1{font-size:clamp(2.5rem,6vw,5rem)}.customer-reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.customer-review{padding:24px;border:1px solid #dedbd3;border-radius:8px}.review-stars{color:#a63c08;font-size:1.5rem;letter-spacing:3px}.review-copy{white-space:pre-wrap;overflow-wrap:anywhere}.leave-review{display:grid;grid-template-columns:1fr 1fr;gap:50px;background:#e8efeb}.leave-review form{min-width:0}.review-consent{display:flex;gap:12px;align-items:flex-start}.review-consent input{width:20px;min-width:20px;margin:5px 0}.home-reviews h2{font-size:clamp(2rem,4vw,3.5rem)}@media(max-width:700px){.customer-reviews,.leave-review{grid-template-columns:1fr;gap:24px}}

.review-photo-gallery{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.review-photo-gallery a{display:block;width:clamp(80px,25vw,150px)}.review-photo-gallery img{width:100%;height:140px;object-fit:cover;border-radius:6px;border:1px solid #ddd}

.christmas-colour-label{display:block;margin:14px 0;font-weight:700}.christmas-colour-label select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #aaa;border-radius:4px;background:#fff;color:#171717;font:inherit}

.club-photo{aspect-ratio:2/3!important;height:auto!important;overflow:hidden;background-repeat:no-repeat}.club-photo img{display:block;width:100%;height:100%;object-fit:cover}.club-photo img[hidden]{display:none}.club-colour-label{display:block;margin:14px 0;font-weight:700}.club-colour-label select{display:block;width:100%;margin-top:6px;padding:10px;border:1px solid #aaa;border-radius:4px;background:#fff;color:#171717;font:inherit}

[data-wing-model] .design-photo{aspect-ratio:3/4}

.baby-vest-section{background:#faf4ef}.baby-vest-section>p{max-width:760px}.baby-vest-section article label{display:grid;gap:6px;margin:14px 0}.baby-vest-section input{width:100%;min-height:44px;padding:10px;border:1px solid #bbb;border-radius:6px;background:white;color:#222}

/* Search headings retain the existing collection typography. */
.shop-collection .clothing-collection-head h1{font-size:clamp(50px,5vw,75px);margin:0}
.shop-search-heading{font-size:clamp(40px,5vw,65px);margin:0 0 20px}
.event .event-hire-title{font-size:clamp(65px,7.5vw,108px);line-height:.9;margin:0}
.event .event-coverage-heading{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(20px,2.2vw,28px);line-height:1.3;letter-spacing:normal;margin:24px 0 16px}
@media(max-width:900px){.event .event-hire-title{font-size:75px}}
@media(max-width:600px){.event .event-hire-title{font-size:87px}}

/* Homepage Christmas collection entrance */
.christmas-shop-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px clamp(20px,5vw,80px);background:#123f38;color:#fff8e8;border-bottom:4px solid #d9b970}.christmas-shop-banner .eyebrow{color:#e9ce91;margin:0 0 6px}.christmas-shop-banner h2{font-size:clamp(28px,4vw,44px);line-height:1.1;margin:0 0 8px}.christmas-shop-banner p{margin:0;max-width:600px}.christmas-shop-banner .button{flex-shrink:0;background:#f4d68b;color:#173c32;border-color:#f4d68b}.christmas-shop-banner .button:hover{background:#fff0c5}.christmas-shop-banner .button:focus-visible{outline:3px solid white;outline-offset:4px}@media(max-width:600px){.christmas-shop-banner{align-items:flex-start;flex-direction:column;gap:18px;padding:24px 20px}.christmas-shop-banner .button{width:100%;text-align:center}}

/* Personalised group clothing spotlight. */
#personalise.party-personalise{background:var(--ink);color:#fff;border-top:8px solid var(--orange);gap:6%;align-items:center}
#personalise.party-personalise h2{font-size:clamp(50px,6vw,84px);line-height:.98;margin:0 0 28px}
#personalise.party-personalise>div>p{color:#dedede;max-width:520px}
#personalise.party-personalise .eyebrow{color:var(--orange);font-weight:700}
.party-occasions{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 24px}
.party-occasions li{border:1px solid #ff975f;border-radius:100px;padding:9px 16px;font-size:clamp(16px,1.6vw,20px);font-weight:700;color:#fff;background:#2c211c}
#personalise .party-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;max-width:100%;white-space:normal;text-align:left;line-height:1.35}
#personalise .party-design-card{background:var(--orange);color:var(--ink);padding:clamp(25px,4vw,48px);border-radius:4px}
#personalise .party-design-card .eyebrow{color:var(--ink);margin-bottom:18px}
#personalise .party-design-card h3{font-family:'Barlow Condensed',Arial,sans-serif;font-size:clamp(40px,4.5vw,60px);line-height:1.03;margin:0 0 24px}
#personalise .party-design-card p{color:var(--ink);max-width:none}
#personalise .party-quote-link{display:inline-block;border-bottom:2px solid currentColor;font-weight:700;padding-bottom:5px;line-height:1.4}
#personalise .party-design-card .party-other-occasions{font-size:14px;border-top:1px solid #16161650;padding-top:20px;margin:25px 0 0;font-weight:600}
@media(max-width:600px){#personalise.party-personalise{gap:32px}#personalise.party-personalise h2{font-size:clamp(48px,12vw,70px)}.party-occasions{gap:8px}.party-occasions li{padding:8px 13px}#personalise .party-cta{width:100%}}


.christmas-couple-photo{aspect-ratio:3/2}.christmas-couple-photo img{object-fit:contain}

/* Give The Magnet Booth a wide, responsive logo without the square artwork's empty margins. */
.home-magnet-section>div{max-width:none;min-width:0}
.home-magnet-section>div>:not(.home-magnet-heading-logo){max-width:650px;margin-left:auto;margin-right:auto}
.home-magnet-section .home-magnet-heading-logo{display:block;width:100%;max-width:1100px;height:auto;aspect-ratio:2/1;object-fit:cover;margin:0 auto 24px}
.story-split .story-booth-logo{width:100%;height:auto;max-height:none;aspect-ratio:2/1;object-fit:cover}

/* A clearer, warmer introduction to personalised photo keepsakes. */
#magnets.home-magnet-section{background:#eef7f4;border-top:0}
#magnets .magnet-title{max-width:1100px;text-align:center;margin:0 auto 36px}
#magnets .magnet-title .eyebrow{color:#17645f;font-size:12px;letter-spacing:.18em;font-weight:700;margin:0 auto 18px}
#magnets .magnet-title h2{font-size:clamp(54px,7.7vw,112px);line-height:1.02;letter-spacing:-.035em;margin:0 0 24px;text-wrap:balance}
#magnets .magnet-title h2 em{display:inline-block;color:#087d78;font-style:normal}
#magnets .magnet-title .magnet-intro{font-size:clamp(18px,2vw,22px);line-height:1.6;max-width:620px;margin:0 auto;color:#355750;text-wrap:pretty}
#magnets .home-magnet-fridge{max-width:900px;border-radius:18px;overflow:hidden;box-shadow:0 14px 38px #153e3312;margin-bottom:30px}
#magnets .magnet-details{max-width:720px;text-align:center}
#magnets .magnet-details>p{line-height:1.75;color:#355750;margin:0 0 26px}
#magnets .magnet-actions{display:flex;flex-direction:column;align-items:center;gap:20px}
#magnets .magnet-actions .button{background:#086c66;color:#fff;border-color:#086c66;max-width:100%;white-space:normal}
#magnets .magnet-actions .button:hover{background:#064f4b}
#magnets .magnet-event-link{color:#155f5a;font-weight:600;text-underline-offset:5px}
#magnets .magnet-event-link:hover{text-decoration:underline}
@media(max-width:600px){#magnets .magnet-title{margin-bottom:26px}#magnets .magnet-title h2{font-size:clamp(48px,12.5vw,72px)}#magnets .home-magnet-fridge{border-radius:12px}#magnets .magnet-event-link{font-size:14px}#magnets .home-magnet-heading-logo{margin-bottom:22px}}

/* Feature the booth at the top of the event bookings page. */
.event-booking-hero{row-gap:clamp(28px,4vw,54px)}
.event-booking-photo{grid-column:1/-1;width:100%;min-width:0;margin:0;background:#fff;border-radius:14px;overflow:hidden}
.event-booking-photo img{display:block;width:100%;height:auto}
@media(max-width:600px){.event-booking-photo{border-radius:8px}}

/* Show the booth before the homepage event booking introduction. */
.home-event{row-gap:clamp(28px,4vw,54px)}
.home-event-photo{grid-column:1/-1;width:100%;min-width:0;margin:0;background:#fff;border-radius:14px;overflow:hidden}
.home-event-photo img{display:block;width:100%;height:auto}
@media(max-width:600px){.home-event-photo{border-radius:8px}}

/* Prominent event choices on the homepage and booking page. */
.bookable-events{grid-column:1/-1;min-width:0;color:#092b35}
#events .bookable-events>.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;margin:0 0 16px}
#events .bookable-events>h2{font-size:clamp(38px,4.8vw,66px);line-height:1.05;letter-spacing:-.025em;margin:0 0 28px;text-wrap:balance}
.bookable-event-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.bookable-event-grid>a{display:flex;flex-direction:column;gap:15px;padding:28px 22px;border-radius:12px;background:#fff;color:#102e37;border:2px solid transparent;box-shadow:0 6px 18px #002c2c12;transition:transform .15s,box-shadow .15s}
.bookable-event-grid>a:hover{transform:translateY(-4px);box-shadow:0 10px 24px #002c2c25}
.bookable-event-grid>a:focus-visible{outline:3px solid #fff;outline-offset:4px;border-color:#102e37}
.bookable-event-grid .occasion-label{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(29px,2.8vw,40px);font-weight:800;line-height:1.05}
.bookable-event-grid>a>span:not(.occasion-label){font-size:15px;line-height:1.55}
.bookable-event-grid b{margin-top:auto;padding-top:12px;font-size:13px;line-height:1.5;color:#086c66}
.bookable-event-grid>a:first-child{background:#fff6ed}
.bookable-event-grid>a:nth-child(2){background:#fff0f0}
.bookable-event-grid>a:nth-child(3){background:#f5f1ff}
.bookable-event-grid>a:nth-child(4){background:#eef8fc}
.bookable-events-note{margin:22px 0 0;font-size:15px;line-height:1.6;max-width:none!important}
.bookable-events-note a{text-decoration:underline;text-underline-offset:4px;font-weight:700}
@media(max-width:1000px){.bookable-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.bookable-event-grid{grid-template-columns:1fr;gap:12px}.bookable-event-grid>a{padding:23px;gap:10px}.bookable-event-grid .occasion-label{font-size:34px}}
@media(prefers-reduced-motion:reduce){.bookable-event-grid>a{transition:none}.bookable-event-grid>a:hover{transform:none}}

/* One square front/back catalogue preview, matching the sailing hoodie. */
.garment-model-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);aspect-ratio:1;background:#eee7dd;overflow:hidden}
.garment-model-pair>div{width:100%;height:100%;min-width:0;aspect-ratio:auto!important;margin:0}
.garment-model-pair>.design-photo img{object-fit:cover}

/* Christmas Jumper Day date spotlight. */
.christmas-jumper-day{margin:28px 0;padding:clamp(22px,4vw,36px);background:#123f38;color:#fff8e8;border:2px solid #d9b970;border-radius:8px;text-align:center}.christmas-jumper-day .eyebrow{color:#e9ce91;margin:0 0 8px}.christmas-jumper-day h2{font-size:clamp(25px,4.5vw,40px);line-height:1.15;margin:0 0 12px}.christmas-jumper-day p{margin:8px 0}.christmas-jumper-day .christmas-jumper-day-date{font-size:clamp(24px,4.5vw,38px);font-weight:800;color:#f4d68b;line-height:1.2}

.christmas-shop-banner .home-jumper-day{margin-top:14px;font-size:clamp(18px,2.5vw,24px);line-height:1.35;color:#f4d68b}.home-jumper-day time{font-weight:800}

/* Stronger homepage Christmas shop headline. */
.christmas-shop-banner h2{font-size:clamp(34px,5.5vw,62px);font-weight:900;letter-spacing:-.025em;color:#fff8e8}.christmas-shop-banner .button{font-weight:800;letter-spacing:.035em}

.all-colour-photo{width:100%;overflow:hidden;background-color:#f4f4f4;background-repeat:no-repeat;}

.christmas-sale-banner{background:#8e1530;color:#fff;text-align:center;padding:20px 16px}.christmas-sale-banner a{color:inherit;text-decoration:none;display:grid;gap:8px}.christmas-sale-banner strong{font-size:clamp(1.25rem,3vw,2rem);line-height:1.2}.christmas-sale-banner span{font-size:1rem}.sale-price{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.sale-price del{font-size:.9rem;color:#666}.sale-price strong{color:#a31531}.sale-tag{font-size:.7rem;font-weight:800;color:#fff;background:#a31531;padding:4px 6px;border-radius:4px}

/* Centre each landscape colour preview in a matching portrait frame. */
.christmas-portrait-crop{aspect-ratio:2/3;overflow:hidden}
.christmas-portrait-crop>.all-colour-photo{width:225%;height:100%;margin-left:-62.5%}

/* Men’s clothing category chooser. */
.mens-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}
.mens-category-card{display:flex;flex-direction:column;align-items:flex-start;min-height:240px;padding:32px;border:2px solid var(--ink);background:#f7f6f2;transition:border-color .15s,background .15s}
.mens-category-card:hover{border-color:var(--orange);background:#fff3e9}
.mens-category-card .eyebrow{margin:0 0 18px;font-size:11px;letter-spacing:1.2px}
.mens-category-card h2{font-size:clamp(32px,4vw,52px);margin:0 0 14px;line-height:1.05}
.mens-category-card p{margin:0 0 24px;color:#555}
.mens-category-action{margin-top:auto;font-weight:700;border-bottom:2px solid var(--orange);padding-bottom:4px}
.mens-category-christmas{grid-column:1/-1;min-height:200px;background:#123f38;color:#fff8e8;border-color:#123f38}
.mens-category-christmas p{color:#fff8e8}.mens-category-christmas:hover{background:#194e45;border-color:#d9b970}
.mens-more-collections a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){.mens-category-grid{grid-template-columns:1fr;gap:16px;margin:24px 0}.mens-category-card{min-height:210px;padding:24px}.mens-category-christmas{grid-column:auto}.mens-category-card h2{font-size:38px}}

.winter-hat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}.winter-hat-photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}.winter-hat-photos img{width:100%;height:auto;border-radius:12px}.winter-hat-grid h2{font-size:1.25rem}@media(max-width:700px){.winter-hat-grid{grid-template-columns:1fr}}

/* Keep the Christmas magnet banner readable on its pale background. */
#home-christmas-magnets h2{color:#173f37;font-family:Arial,Helvetica,sans-serif;font-weight:800;font-size:clamp(30px,5vw,48px);line-height:1.15;letter-spacing:0;text-shadow:none}
#home-christmas-magnets .eyebrow{color:#285a4e;font-weight:800;letter-spacing:.08em}
#home-christmas-magnets p{color:#173f37}
#home-christmas-magnets .button:focus-visible{outline-color:#173f37}
