/* Monochrome item icons (Noto Emoji, SIL Open Font License), subset to the 12 icons used */
@font-face{font-family:'TSS Icons';font-style:normal;font-weight:400;font-display:block;src:url(data:font/woff2;base64,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) format('woff2');unicode-range:U+1F9E3,U+1F9E5,U+1F393,U+1F454,U+1F455,U+1F456,U+1F457,U+1F3F7,U+1F97C,U+1F3BD}
@font-face{font-family:'TSS Icons';font-style:normal;font-weight:400;font-display:block;src:url(data:font/woff2;base64,d09GMgABAAAAAAPEAA8AAAAABpwAAANtAAMBiQAAAAAAAAAAAAAAAAAAAAAAAAAAHCAGYD9TVEFULgBsEQgKhDiDTwE2AiQDDAsIAAQgBYJoByAXJBgIGyoFoB6HcUyyAZX5owUB/Zb+LHDKNUSFiKj2q0/MFRlyXwASWQJY/P/PzTibgn2KQg4snjgWBj6WraEYrYGnp72ED5xPt4lG6xGxT0wl6gEEYMWbL1FUUtWEGQXgfwBAsSriBAxgSDScCcJXZ+TXGYmjTTNIQhaSIqASpJnR0taWknftf9PUfzaQAfELIACc5wGdBYHAjACcCcCbtDo6tiQAJGRAQhIngHQPAAogA0HwaREZAQSRsQJFFHSgoCCgPT9ui58QANgACAMAUpAXGgLx82l/OJAQiP+xAiADYARU4CbgEwBAAQBAjVIUJSBMURwdlfU7XnvIr/P8iJb7Xns5dfByr9brn1ePftan+czg/lsffCWr6Qqf9nMfeCWj5TTrUc59GaPpLQOx/eMjmcMjR4l9N7+My8S+qgaerR7t4a8ezV5Qms+p7FmPiogIu2Ko9W716PTmS6/27Hgtt/Xqs0IGHktoOess61FnuDfdUNR3yRnhzfc2tZ1x5aSsSs0xg9EbI/fdJOT911WHo19F2rsha2jg0Ojl1wt5/z6r/VH3IO1d69JuOmTMEwWnl9jVHpfkOnzHk3fqhir1FV2/6N2xLxV3Pz3sl7Ev3zvRX//kb0NV3JN3XjGc5HpcbYnd6b8c84e9/RfJS8eK8p32x684S7vynB9zKJsov2XC3sWc+XXSlKr5JJ1QomklFyT5aOpU0tdhqoumcs89WIZ+OfZNZ5c3fzk2o6442dtWHvfuk/HHH8QGJC/N/N73k039aG7m96XimICD4/3ffbLfrizFO7kvbv3uhLtP2fe56hwtweFyXVt6MmIno74+o2Re2Yl4cshfW63tsaE5O+14BHiU0Os7TkH/f+WedlEaAAhAFkfOTPz+oV4t61ezagbg3VeTRwE++zHhGOmC/y4zHTE+A5iRkvhfrFjDgqh0Ps9p88vyF4zhAN8kwU2oAE6BbZkZISMUC5AFAYGzLJCwow5k0vSAQpDTwICnuygjAV75igAbv1Fo1px1C8aNGrNElyBOvETRSCZIoSs1u5mjpgzTVb1XqMasJbN0xabNmjCuwbBRy6b0W5AoRpw4KTKVqlWrVGZaGj3RVFy4T1+/tBi2YNG4WTP0VlXLO62Gr6vLGKvyDoexhf2zchIK/1kiELIIuKQ20wtCAQ==) format('woff2');unicode-range:U+1F396}
@font-face{font-family:'TSS Icons';font-style:normal;font-weight:400;font-display:block;src:url(data:font/woff2;base64,d09GMgABAAAAAANUAA8AAAAABcQAAAL6AAMBiQAAAAAAAAAAAAAAAAAAAAAAAAAAHCAGYD9TVEFULgBsEQgKgmCCdgE2AiQDDAsIAAQgBYJoByAXJBgIG9EEURSwAvkqgXOiCkv6NxKMLdh3OWAQ+ottEx03Gf/i1Xj4GmO9v7uoJHGJpiERCZVMpJFogaFRiXJeby4Ukylda4Oahw2ikuR8EbVOvXQrXaenY+jgn8B2v92SQg80EAoxgkAq/+3PEuGLNQD/51w8G0Y+36dNbWCjaFsfFliBRdkNaW900aDRmICl27CoLCBiYGraz38DgVpdesS2f2gsEFHgPwCU2rbo06hYrBgketaE/AaVcvXSFSlyJCBECdVG7q2IAODzpD9hzn8JZg72AwiQbw+APjVCqBZoF+iSrmhGEQaQZCQpbkkPoCBjCLnbOQidzGrzBfShKIInMPjG2DcM1IMxQLIbUyDEz1lNEsL7lB1kUImCazwCoAAoxw1VGYnyjgu1hTuxjod4sQeg8XfOlVh9g9U/Jjw88OxH8c77e3AXe/Do/KjVNO511YCBe5UpOv/g4Jxag7IOp4r3/DgWwUlqFbEOMIYrO8JV3cV3PmL1di3KiSr6RnRmPyppfS/W03PAfZ1isMmSxpZAHNO6HAXmfFpbKduxf9//imPNU/uS46LaO6Ji49qjdu8U52xeZB+5Ga2/m67GCtSFRqFB7lZ2X17eQVRRbH1QERHkb6KuH2LF0x9ituq2OOg0nRj6ROeFudnjxOJmcICplZGJ763EhfYpt79r03EtFlcKkFHpmXCTKLWDWf52lBNEOI4ggfMSBwkuzhEQR5nQL5CkAoNIMjCQSncQSFN2ACCQ42a/Wp20x1ejGnw6jgF8vnZdfBr/JlH5BKiWQPC/ebVjBU0aadXQmPMXDODMfwSyawUC5lW7xC9KDbaQILTbgqTROWRrLqAYcgcVOtzzlQY8byWo9w2E5ClXgInGUETHgjnzFk3T6y1Y0WcPgtA4SDqOhYLCIUUQHTu4EBamaCRaMY4sBezNmDNnxaY9ESIEcPe0KYVlbh57kE7/JB6pQCEmhEfntnZvKCYg3zjkB8nyUaNCNH9ZWSEQpWZIOGGrSYnCVyEAAAAA) format('woff2');unicode-range:U+1F93E}
:root{color-scheme:light;--navy:#1d3d9f;--navy2:#12275f;--gold:#f5b800;--gold2:#d99f00;--red:#c81e2c;--green:#157a35;--bg:#f8f6f1;--card:#fff;--ink:#1b1f2a;--mut:#5f6878;--line:#e6e1d8;--sh:0 2px 8px rgba(20,30,70,.08);--sh2:0 12px 28px rgba(29,61,159,.18);--serif:'Playfair Display',Georgia,'Times New Roman',serif;--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--sans);background:var(--bg);color:var(--ink);line-height:1.5;padding-bottom:env(safe-area-inset-bottom,0px)}
h1,h2,h3{font-family:var(--serif);margin:0;line-height:1.2}
h4,p{margin:0}
a{color:var(--navy);text-decoration:none}
button,input,select,textarea{font-family:inherit;font-size:15px}
img{max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 18px}
.sec{padding:44px 0}
.sec-h{text-align:center;margin-bottom:26px}
.sec-h h2{font-size:30px;color:var(--navy2)}
.sec-h p{color:var(--mut);margin-top:6px;font-size:15px}
.sec-h:after{content:"";display:block;width:56px;height:3px;border-radius:3px;background:var(--gold);margin:12px auto 0}
.skip{position:absolute;left:-999px}.skip:focus{left:10px;top:10px;z-index:999;background:#fff;padding:8px 12px}

/* header */
header.top{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 1px 0 var(--line),var(--sh);padding-top:env(safe-area-inset-top,0px)}
.hd{display:flex;align-items:center;justify-content:space-between;gap:10px;height:64px}
.brand{display:flex;align-items:center;gap:10px;color:var(--navy2);font-weight:700;min-width:0}
.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;flex:none}
.brand span{font-family:var(--serif);font-size:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav{display:flex;gap:6px;align-items:center;flex:none}
.hbtn{border:0;border-radius:8px;padding:9px 12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;background:#f1efe9;color:var(--navy2);font-size:14px}
.hbtn.p{background:var(--navy);color:#fff}
.hbtn.p b{background:var(--gold);color:var(--navy2);border-radius:20px;min-width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;padding:0 5px}

/* hero */
.hero{background:radial-gradient(900px 400px at 85% -10%,rgba(245,184,0,.28),transparent 60%),linear-gradient(135deg,var(--navy2),var(--navy) 60%,#2b57c9);color:#fff;text-align:center;padding:48px 0 52px}
.hero .tag{display:inline-block;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.28);border-radius:30px;padding:6px 16px;font-size:13px;font-weight:600;margin-bottom:14px}
.hero h1{font-size:42px;letter-spacing:-.5px;max-width:820px;margin:0 auto 14px}
.hero h1 em{font-style:normal;color:var(--gold)}
.hero p{font-size:17px;opacity:.92;max-width:640px;margin:0 auto 24px}
.cta{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{border:0;border-radius:10px;padding:13px 24px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .15s;text-align:center}
.btn:hover{transform:translateY(-1px)}
.btn.gold{background:var(--gold);color:var(--navy2);box-shadow:0 6px 16px rgba(245,184,0,.35)}
.btn.glass{background:rgba(255,255,255,.14);color:#fff;border:2px solid rgba(255,255,255,.4)}
.btn.navy{background:var(--navy);color:#fff}
.btn.wa{background:#1f8f3a;color:#fff}
.btn.light{background:#f1efe9;color:var(--ink)}
.btn.block{width:100%}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}

/* category strip */
.cats{background:var(--gold);padding:24px 0}
.cats h3{text-align:center;color:var(--navy2);font-size:22px;margin-bottom:14px}
.catrow{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.cat{flex:1 1 140px;background:#fff;border:0;border-radius:12px;padding:14px 8px;font-weight:700;color:var(--navy2);cursor:pointer;box-shadow:var(--sh);display:flex;flex-direction:column;align-items:center;gap:6px;font-size:14px}
.cat i{font-style:normal;font-size:26px}
.cat small{font-weight:500;color:var(--mut);font-size:12px}

/* logo badge */
.lg{width:68px;height:68px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#fff;flex:none;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--line)}
.lg img{width:100%;height:100%;object-fit:cover}
.lg.ini{background:linear-gradient(135deg,var(--navy),#3f6be0);color:#fff;font-family:var(--serif);font-weight:700;font-size:22px}
.lg.ini svg{width:60%;color:#fff}
.lg.sm{width:30px;height:30px;font-size:12px;box-shadow:0 0 0 2px #fff,0 0 0 3px var(--line)}
.lg.xl{width:84px;height:84px;font-size:28px}

/* school grid */
.school-search{max-width:420px;margin:0 auto 18px;display:block;width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:#fff}
.sgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:14px}
.stile{background:var(--card);border:2px solid transparent;border-radius:16px;padding:18px 10px 14px;text-align:center;cursor:pointer;box-shadow:var(--sh);display:flex;flex-direction:column;align-items:center;gap:10px;font:inherit;color:inherit;transition:transform .2s,box-shadow .2s,border-color .2s}
.stile:hover,.stile:focus-visible{transform:translateY(-3px);box-shadow:var(--sh2);border-color:var(--gold)}
.stile h4{font-size:14px;line-height:1.3;min-height:36px;display:flex;align-items:center}
.stile small{color:var(--mut);font-size:12.5px;margin-top:-6px}
.stile .save{background:#e8f7ec;color:var(--green);font-weight:700;font-size:11.5px;border-radius:20px;padding:2px 8px}

/* offers */
.offer{padding:30px 0;color:#fff;text-align:center}
.offer.red{background:linear-gradient(135deg,#0d5c3f,#12805a 55%,#1aa070)}   /* owner: no red – deep green for savings */
.offer.red .ocard{border-color:var(--gold)}
.offer.blue{background:linear-gradient(135deg,var(--navy2),var(--navy) 60%,#2b57c9)}
.offer .big{font-family:var(--serif);font-size:26px}
.offer .pct{display:inline-block;background:var(--gold);color:var(--navy2);font-family:var(--sans);font-weight:800;border-radius:30px;padding:4px 14px;font-size:17px;margin-left:8px;vertical-align:middle;white-space:nowrap}
.offer .sub{opacity:.95;margin:8px 0 18px;font-size:15px}
.ogrid{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;max-width:900px;margin:0 auto}
.ocard{flex:0 1 200px;display:flex;flex-direction:column;align-items:center;gap:8px;background:rgba(255,255,255,.14);border:2px solid rgba(255,255,255,.55);border-radius:14px;padding:14px 10px;color:#fff;cursor:pointer;font-weight:700;font-size:14px}
.offer.blue .ocard{border-color:var(--gold)}
.ocard small{font-weight:500;opacity:.92;font-size:12.5px}

/* school page */
.school-head{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;padding:22px 0}
.school-head .in{display:flex;align-items:center;gap:16px}
.school-head h1{font-size:28px}
.school-head p{opacity:.9;font-size:14px;margin-top:4px}
.back{background:rgba(255,255,255,.15);color:#fff;border:0;border-radius:8px;padding:8px 12px;font-weight:600;cursor:pointer;margin-bottom:14px}
.toolbar{position:sticky;top:64px;z-index:50;background:var(--bg);padding:12px 0;border-bottom:1px solid var(--line)}
.tabs{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.tabs::-webkit-scrollbar{display:none}
.chip{border:1.5px solid var(--line);background:#fff;color:var(--ink);border-radius:30px;padding:8px 15px;font-weight:600;cursor:pointer;white-space:nowrap;font-size:14px}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.chip small{opacity:.75;font-weight:500}
.search{width:100%;padding:11px 14px 11px 40px;border:1.5px solid var(--line);border-radius:10px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%23667085' stroke-width='2' viewBox='0 0 24 24'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 12px 50% no-repeat;margin-top:10px}
.group{margin:26px 0 8px}
.group h3{font-size:20px;color:var(--navy2);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.group h3 small{font-family:var(--sans);font-size:13px;color:var(--mut);font-weight:500}
.notice{background:#fff7da;border:1px solid #f1d675;color:#5c4400;border-radius:10px;padding:12px 14px;font-size:14px;margin:14px 0;line-height:1.5}
.notice.info{background:#eef3ff;border-color:#c9d6fb;color:#1d2d5c}

/* product cards */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.pc{background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sh)}
.pc .ph{aspect-ratio:4/3;background:#f3f1ec;display:flex;align-items:center;justify-content:center;color:#b3ad9f;position:relative}
.pc .ph img{width:100%;height:100%;object-fit:cover}
.pc .ph svg{width:34%}
.pc .ph.none{aspect-ratio:auto;height:120px}.pc .ph.none svg{width:auto;height:62px}
.pc .ph .nophoto{position:absolute;bottom:8px;font-size:11.5px;color:var(--mut)}
.pc .ph .sw{position:absolute;top:10px;left:10px;width:22px;height:22px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px var(--line)}
.pc .body{padding:13px;display:flex;flex-direction:column;gap:9px;flex:1}
.pc h4{font-size:16px;color:var(--navy2);line-height:1.3}
.meta{font-size:13px;color:var(--mut);display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.pill{display:inline-block;border-radius:20px;padding:2px 9px;font-size:11.5px;font-weight:700;background:#f1efe9;color:var(--ink)}
.pill.warn{background:#fff1d1;color:#7a5300}
.pill.ok{background:#e8f7ec;color:var(--green)}
.pill.no{background:#fde8ea;color:var(--red)}
.lbl{font-size:12px;font-weight:700;color:var(--mut);text-transform:uppercase;letter-spacing:.5px}
.sizes{display:flex;flex-wrap:wrap;gap:6px}
.sz{min-width:44px;min-height:40px;border:1.5px solid var(--line);background:#fff;border-radius:8px;padding:6px 9px;font-weight:600;cursor:pointer;font-size:14px}
.sz.on{background:var(--navy);border-color:var(--navy);color:#fff}
.sz:disabled{text-decoration:line-through;opacity:.45;cursor:not-allowed}
.pc select{width:100%;padding:10px;border:1.5px solid var(--line);border-radius:8px;background:#fff}
.price{font-weight:800;font-size:19px;color:var(--navy);min-height:48px}
.price small{display:block;font-weight:500;color:var(--mut);font-size:12px}
.price s{color:var(--mut);font-weight:500;font-size:14px;margin-right:6px}
.off{display:inline-block;background:#e8f7ec;color:var(--green);font-size:12px;font-weight:700;padding:2px 8px;border-radius:20px;margin-top:3px}
.pc .add{margin-top:auto}
.err-msg{color:var(--red);font-size:13px;font-weight:600}
.empty{text-align:center;color:var(--mut);padding:36px 16px;background:#fff;border:1px dashed var(--line);border-radius:14px}
.empty .btn{margin-top:14px}

/* trust / join / terms / footer */
.trust{background:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.tgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:22px;text-align:center}
.tgrid i{font-style:normal;font-size:34px;display:block;margin-bottom:8px}
.tgrid h4{color:var(--navy2);font-size:16px;margin-bottom:4px}.tgrid p{color:var(--mut);font-size:14px}
.join{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff}
.join .in{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.join h2{font-size:32px;margin-bottom:12px}.join h2 em{font-style:normal;color:var(--gold)}
.join p{opacity:.93;margin-bottom:10px;font-size:16px}
.form{background:#fff;color:var(--ink);border-radius:16px;padding:20px;box-shadow:var(--sh2)}
.form h4{font-family:var(--serif);font-size:19px;color:var(--navy2);margin-bottom:10px}
label.f{display:block;font-size:13px;font-weight:700;color:var(--mut);margin:11px 0 4px}
.form input,.form textarea,.form select,.field{width:100%;padding:11px;border:1.5px solid var(--line);border-radius:9px;background:#fbfaf7;color:var(--ink)}
.form textarea{min-height:76px;resize:vertical}
.terms{background:#fff}
.tc{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tc div{background:var(--bg);border-radius:14px;padding:18px;border:1px solid var(--line)}
.tc h4{color:var(--navy2);margin-bottom:8px}.tc ul{margin:0;padding-left:18px;font-size:14px;color:#3b4252}.tc li{margin:5px 0}
footer{background:var(--navy2);color:#dbe3ff;padding:40px 0 calc(24px + env(safe-area-inset-bottom,0px))}
footer a{color:#fff}
.fg{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:28px}
footer h4{color:var(--gold);font-family:var(--serif);margin-bottom:10px;font-size:17px}
footer p,footer li{font-size:14px;margin:5px 0}footer ul{list-style:none;padding:0;margin:0}
.soc{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.soc a{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:8px 12px;font-size:13.5px;font-weight:600}
.copy{border-top:1px solid rgba(255,255,255,.15);margin-top:26px;padding-top:16px;text-align:center;font-size:13px;opacity:.85}

/* drawer & modals */
.ov{position:fixed;inset:0;background:rgba(10,15,40,.55);z-index:140;opacity:0;visibility:hidden;transition:.25s}
.ov.on{opacity:1;visibility:visible}
#drawer{position:fixed;top:0;right:0;height:100%;width:100%;max-width:440px;background:#fff;z-index:200;transform:translateX(105%);visibility:hidden;transition:transform .3s,visibility .3s;display:flex;flex-direction:column;box-shadow:-8px 0 30px rgba(0,0,0,.25)}
#drawer.on{transform:none;visibility:visible}
.dh{display:flex;justify-content:space-between;align-items:center;padding:16px 18px;padding-top:calc(16px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--line)}
.dh h3{font-size:21px;color:var(--navy2)}
.x{background:#f1efe9;border:0;width:38px;height:38px;border-radius:50%;font-size:18px;cursor:pointer;color:var(--ink)}
.db{flex:1;overflow-y:auto;padding:14px 18px}
.ci{display:flex;justify-content:space-between;gap:10px;padding:11px 0;border-bottom:1px solid var(--line)}
.ci b{font-size:14.5px;color:var(--navy2)}.ci small{color:var(--mut);display:block;line-height:1.4;font-size:13px}
.qty{display:flex;align-items:center;gap:8px;flex:none}
.qty button{width:32px;height:32px;border-radius:8px;border:1.5px solid var(--line);background:#fff;font-weight:700;cursor:pointer}
.empty-c{text-align:center;color:var(--mut);padding:34px 8px}
.empty-c i{font-style:normal;font-size:42px;display:block;margin-bottom:6px}
.checkout label.f{margin-top:10px}
.checkout input,.checkout select{width:100%;padding:10px;border:1.5px solid var(--line);border-radius:9px;background:#fff}
.pay{display:flex;gap:8px;flex-wrap:wrap}
.pay label{display:flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:#fff;border-radius:9px;padding:8px 11px;font-size:14px;cursor:pointer}
.pay input{width:auto;margin:0}
.pay label.dis{opacity:.45;cursor:not-allowed}
.tl{display:flex;justify-content:space-between;padding:4px 0;font-size:14.5px}
.tl.g{font-weight:800;font-size:18px;color:var(--navy);border-top:1px dashed var(--line);margin-top:6px;padding-top:10px}
.small{font-size:12.5px;color:var(--mut);margin-top:8px;text-align:center}
.modal{position:fixed;inset:0;z-index:250;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(10,15,40,.55);overflow-y:auto}
.modal.on{display:flex}
.panel{background:#fff;border-radius:18px;max-width:460px;width:100%;max-height:92vh;overflow-y:auto;padding:22px;box-shadow:0 24px 60px rgba(0,0,0,.35);text-align:center}
.panel h2{font-size:24px;color:var(--navy2);margin:6px 0}
.panel .btn{width:100%;margin-top:8px}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));transform:translate(-50%,30px);background:var(--navy2);color:#fff;padding:12px 20px;border-radius:30px;font-weight:600;font-size:14px;z-index:300;opacity:0;pointer-events:none;transition:.25s;max-width:92vw;text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}
.fab{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:90;width:56px;height:56px;border-radius:50%;background:#1f8f3a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:26px;box-shadow:0 8px 20px rgba(0,0,0,.3)}
.loading{text-align:center;color:var(--mut);padding:40px}

/* tool pages (scanner, size guide) */
.page-head{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;padding:26px 0;text-align:center}
.page-head h1{font-size:28px}.page-head p{opacity:.9;margin-top:6px}
.tool{max-width:620px;margin:20px auto;background:#fff;border-radius:16px;box-shadow:var(--sh);padding:20px}
.two{display:flex;gap:8px}.two>*{flex:1}
.video-box{position:relative;background:#000;border-radius:12px;overflow:hidden;aspect-ratio:4/3}
.video-box video{width:100%;height:100%;object-fit:cover}
.video-box .aim{position:absolute;left:12%;right:12%;top:38%;height:24%;border:3px solid var(--gold);border-radius:10px;box-shadow:0 0 0 999px rgba(0,0,0,.35)}
.result{margin-top:16px}
.result .card{border:1px solid var(--line);border-radius:14px;padding:16px;text-align:left}
table.sc{width:100%;border-collapse:collapse;font-size:14px;margin:8px 0}
table.sc th{background:var(--navy);color:#fff;padding:8px;font-weight:600}
table.sc td{border:1px solid var(--line);padding:7px;text-align:center}
.rec{background:#eef3ff;border-radius:12px;padding:14px;margin-top:14px;font-size:15px}
.rec b.big{font-size:26px;color:var(--navy2);display:block}
.ur{display:block;color:var(--mut);font-size:13.5px;margin-top:2px}

@media(max-width:900px){.join .in{grid-template-columns:1fr}.tc{grid-template-columns:1fr}.fg{grid-template-columns:1fr 1fr}.fg>div:first-child{grid-column:1/-1}}
@media(max-width:640px){
 .wrap{padding:0 14px}.sec{padding:32px 0}.sec-h h2{font-size:24px}
 .brand span{font-size:16px}.brand img{width:38px;height:38px}.hbtn{padding:8px 9px;font-size:13px}.hbtn .lt{display:none}
 .hero{padding:34px 0 40px}.hero h1{font-size:29px}.hero p{font-size:15.5px}
 .cat{flex:0 0 calc(33.333% - 8px);min-width:0;font-size:13px;padding:12px 4px}.ocard{flex:0 0 calc(50% - 6px)}
 .offer .big{font-size:21px}.offer .pct{margin:6px 0 0}
 .sgrid{grid-template-columns:repeat(2,1fr);gap:10px}.lg{width:58px;height:58px}
 .pgrid{grid-template-columns:1fr}
 .school-head h1{font-size:22px}.lg.xl{width:64px;height:64px}
 .join h2{font-size:26px}.fg{grid-template-columns:1fr}
}
.thumb{width:44px;height:44px;border-radius:8px;object-fit:cover;background:#f1efe9;display:inline-flex;align-items:center;justify-content:center;color:#b3ad9f;flex:none}
.thumb svg{width:70%}
.cat{text-align:center}

/* JazzCash payment box in checkout */
.paybox{display:grid;grid-template-columns:120px 1fr;gap:12px;align-items:start;background:#fffbe6;border:1.5px solid var(--gold);border-radius:12px;padding:12px;margin-top:10px;font-size:13.5px}
.paybox img{width:120px;border-radius:8px;display:block}
.paybox .till{display:flex;align-items:center;gap:8px;margin:2px 0 6px}
.paybox .till b{font-size:20px;letter-spacing:1.5px;color:var(--navy2);font-variant-numeric:tabular-nums}
.paybox ol{margin:0;padding-left:18px}.paybox li{margin:3px 0}
.btn.sm{padding:6px 12px;font-size:13px}
@media(max-width:380px){.paybox{grid-template-columns:1fr}.paybox img{width:160px}}

/* emoji placeholder until a product photo is uploaded */
.emo{font-size:56px;line-height:1;font-family:"TSS Icons",sans-serif;font-weight:400;color:var(--navy2);font-variant-emoji:text}
.emo.sm{font-size:28px}
.pc .ph.none{background:linear-gradient(135deg,#f6f4ee,#fbf8ef);border-bottom:1px solid var(--line)}

/* sports kit colour sub-headings */
.kit{display:flex;align-items:center;gap:8px;font-size:15px;color:var(--navy2);margin:18px 0 10px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.kit .kdot{width:14px;height:14px;border-radius:50%;box-shadow:0 0 0 1px var(--line)}
.group h3+.kit{margin-top:4px}

/* For: All / Boys / Girls */
.gen{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}
.gen .lbl{margin-right:2px}
.chip.gold.on{background:var(--gold);border-color:var(--gold);color:var(--navy2)}
/* follower price */
.lock{background:#fff8e1;border:1px solid #f1d27a;border-radius:12px;padding:10px 12px;margin:8px 0;font-size:13.5px;line-height:1.45;color:var(--ink);text-align:left}
.lock b{color:var(--navy2);font-size:14.5px}
.lock span{color:var(--mut)}
.fbtns{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.fbtn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:6px 12px;border-radius:20px;background:var(--navy2);color:#fff!important;font-weight:600;font-size:13px;text-decoration:none;flex:1 1 auto}
.fbtn:hover{background:var(--navy)}
.price .fp{display:block;color:var(--gold2);font-weight:700;margin-top:2px}
.price .lock{font-weight:400}
/* WhatsApp Community */
.community{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;padding:26px 0}
.community .in{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.community h3{font-family:var(--serif);font-size:24px;color:var(--gold);margin:0 0 4px}
.community p{margin:0;opacity:.9;max-width:520px}
.comm{display:inline-flex;flex-direction:column;margin-top:12px;background:#1f8f4e;color:#fff!important;border-radius:10px;padding:9px 14px;font-weight:700;text-decoration:none}
.comm small{font-weight:500;opacity:.9}
.fbtn[data-follow="WhatsApp Community"]{background:#1f8f4e}
/* follow benefits */
.perks-box .ph{display:block;font-size:16px}
.perks-box .ur{display:block;color:var(--mut);font-size:14px;margin-top:2px}
.perks{list-style:none;padding:0;margin:8px 0 4px;display:grid;gap:5px}
.perks li{position:relative;padding-left:22px;color:var(--ink)}
.perks li::before{content:"\2713";position:absolute;left:2px;top:0;color:var(--green);font-weight:800}
.perks li b{font-size:13.5px}
.perks-box .tap{display:block;margin-top:6px;font-weight:600;color:var(--navy2)}
@media(min-width:700px){.perks{grid-template-columns:1fr 1fr;column-gap:18px}}
/* add-your-school photos */
.req{color:var(--red);font-weight:700;font-size:12px}
.upl{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;border:2px dashed #c9c2b2;border-radius:12px;padding:14px;text-align:center;cursor:pointer;background:#fbfaf6;color:var(--navy2)}
.upl input{position:absolute;width:1px;height:1px;opacity:0}
.upl small{color:var(--mut)}
.upl.has{border-style:solid;border-color:var(--green)}
.upl.err{border-color:var(--red);background:#fff1f2}
.upl:focus-within{outline:3px solid var(--gold)}
.thumbs{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.thumbs .th{position:relative;width:64px;height:64px}
.thumbs img{width:64px;height:64px;object-fit:cover;border-radius:8px;border:1px solid var(--line)}
.thumbs button{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:var(--navy2);color:#fff;font-size:11px;cursor:pointer}
.steps2{margin-top:12px;background:#eef7f0;border:1px solid #bfe3c9;border-radius:12px;padding:12px;font-size:14px;color:var(--ink)}
.steps2 p{margin:0 0 8px}
/* bank transfer box */
.paybox.bank{grid-template-columns:1fr}
.bankd{margin:4px 0 8px;font-size:14px;line-height:1.5}
/* ===== size guide (3 steps) ===== */
.sg{padding:16px}
.sg-step{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
.sg-step:last-of-type{border-bottom:0}
.sg-n{flex:0 0 32px;height:32px;border-radius:50%;background:var(--navy2);color:var(--gold);font-weight:800;display:flex;align-items:center;justify-content:center;font-size:16px}
.sg-b{flex:1;min-width:0}
.sg-t{display:block;font-weight:700;color:var(--navy2);font-size:16.5px;margin:4px 0 10px}
.sg-u{display:block;font-weight:500;color:var(--mut);font-size:14px;margin-top:2px}
.sg-wait{color:var(--mut);margin:0}
.sg-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px}
.sg-item{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;border:1.5px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;font-weight:600;font-size:13px;color:var(--ink);min-height:84px;justify-content:center}
.sg-item .emo{font-size:30px;line-height:1}
.sg-item.on{border-color:var(--navy);background:#eef3ff;box-shadow:0 0 0 2px var(--navy) inset}
.sg-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.sg-tabs button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:12px 8px;font-weight:700;font-size:14.5px;cursor:pointer;color:var(--ink)}
.sg-tabs button small{display:block;font-weight:500;color:var(--mut);font-size:13px;margin-top:2px}
.sg-tabs button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.sg-tabs button.on small{color:#dbe4ff}
.sg-tabs button:disabled{opacity:.45;cursor:not-allowed}
.sg-note{background:#fff8e1;border:1px solid #f1d27a;border-radius:10px;padding:10px 12px;margin:0 0 10px;font-size:14px}
.sg-how{padding-left:20px;margin:0 0 10px;font-size:14.5px;line-height:1.5}
.sg-how li{margin-bottom:4px}
.sg-fig{color:var(--navy2);display:flex;justify-content:center}
.sg-fig svg{width:200px;max-width:70%;height:auto}
.sg-units{display:flex;gap:16px;justify-content:flex-end;font-size:13.5px;color:var(--mut);margin:4px 0}
.sg-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.sg-fields>div[hidden]{display:none}
.field.big{font-size:20px;font-weight:700;padding:12px;text-align:center}
.sg-fit{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.sg-fit label{cursor:pointer}
.sg-fit input{position:absolute;opacity:0;width:1px;height:1px}
.sg-fit span{display:block;text-align:center;border:1.5px solid var(--line);border-radius:12px;padding:10px 4px;font-weight:600;font-size:13.5px;background:#fff}
.sg-fit span small{display:block;font-weight:500;color:var(--mut);font-size:12.5px}
.sg-fit input:checked+span{border-color:var(--navy);background:#eef3ff;box-shadow:0 0 0 2px var(--navy) inset}
.sg-fit input:focus-visible+span{outline:3px solid var(--gold)}
.sg-go{margin-top:16px;font-size:17px;padding:14px}
.sg-res .big{display:block;font-size:34px;color:var(--navy2);margin:2px 0 6px;font-family:var(--serif)}
.sg-res>p{margin:0 0 10px}
.sg-warn{background:#fff1f2;border:1px solid #f5c2c7}
.sg-buy{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border-radius:10px;padding:10px 12px;margin-top:8px;border:1px solid var(--line)}
.sg-pr{font-weight:800;color:var(--navy2);margin-top:2px}
.sg-pr .fp{display:block;font-weight:600;color:var(--gold2)}
.agehint{font-size:13px;line-height:1.4;margin:2px 0 6px;padding:6px 9px;background:#f4f7ff;border-left:3px solid var(--navy);border-radius:6px}.agehint.mut{background:none;border:0;padding:0 0 0 1px;color:var(--mut)}.agehint small{color:var(--mut)}
.sg-link{display:inline-block;font-size:13px;font-weight:600;color:var(--navy);margin:2px 0 6px;text-decoration:underline}
@media(max-width:380px){.sg-fields{grid-template-columns:1fr}}
/* opening hours */
.hours{margin-top:10px;font-size:14px;line-height:1.6}
.ob{display:inline-block;font-size:11.5px;font-weight:700;border-radius:20px;padding:1px 8px;margin-left:4px;vertical-align:1px}
.ob.on{background:#1f8f4e;color:#fff}.ob.off{background:rgba(255,255,255,.18);color:#fff}
/* why choose us */
.why{background:#fff;border-top:3px solid var(--gold);border-bottom:3px solid var(--gold)}
.why .sec-h .why-ur{margin:2px 0 4px;color:var(--gold2);font-size:17px;font-weight:600}
.wgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.wc{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:18px 14px;text-align:center}
.wc .wi{display:flex;align-items:center;justify-content:center;width:52px;height:52px;margin:0 auto 10px;border-radius:50%;border:2px solid var(--gold);color:var(--navy2);background:#fff}
.wc .wi svg{width:26px;height:26px}
.wc h4{color:var(--navy2);font-size:15.5px;margin-bottom:4px}
.wc p{color:var(--mut);font-size:13.5px;line-height:1.45;margin:0}
@media(max-width:900px){.wgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:380px){.wc{padding:14px 10px}.wc h4{font-size:14.5px}}
/* why: feature banner */
.wfeat{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px}
.wf{display:flex;gap:16px;align-items:flex-start;border-radius:16px;padding:22px 20px;text-align:left}
.wf h3{font-family:var(--serif);font-size:22px;margin:0}
.wf p{margin:6px 0 0;font-size:14.5px;line-height:1.5}
.wf .wf-ur{margin:2px 0 4px;font-size:15px;font-weight:600}
.wf .wi.lg{flex:0 0 60px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:50%;border:2px solid var(--gold);margin:0}
.wf .wi.lg svg{width:30px;height:30px}
.navyf{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff}
.navyf h3{color:#fff}.navyf .wf-ur{color:var(--gold)}.navyf .wi.lg{color:var(--gold);background:rgba(255,255,255,.06)}
.navyf p{color:#e3e9ff}
.goldf{background:#fff8e1;border:1.5px solid #f1d27a;color:var(--ink)}
.goldf h3{color:var(--navy2)}.goldf .wf-ur{color:var(--gold2)}.goldf .wi.lg{color:var(--navy2);background:#fff}
.goldf p{color:var(--mut)}
.wf-l{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:5px;font-size:14px}
.wf-l li{position:relative;padding-left:22px}
.wf-l li::before{content:"\2713";position:absolute;left:2px;color:var(--gold);font-weight:800}
.wf-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.wf-chips span{background:#fff;border:1.5px solid var(--navy2);color:var(--navy2);border-radius:20px;padding:5px 12px;font-size:13px;font-weight:600}
@media(max-width:800px){.wfeat{grid-template-columns:1fr}.wf{padding:18px 16px}.wf h3{font-size:20px}}
/* category icons */
.cat .ci{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1.5px solid var(--gold);color:var(--navy2)}
.cat .ci svg{width:22px;height:22px}
.cat small{color:var(--green)}
.cat:first-child small{color:var(--navy)}
@media(min-width:700px){.cat{flex:1 1 0}}
/* ===== motion (gentle; switched off for "reduce motion") ===== */
@keyframes tssFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes tssWiggle{0%,100%{transform:rotate(0)}25%{transform:rotate(-10deg)}75%{transform:rotate(10deg)}}
@keyframes tssPulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(245,184,0,.55)}50%{transform:scale(1.06);box-shadow:0 0 0 8px rgba(245,184,0,0)}}
@keyframes tssSwing{0%,100%{transform:rotate(0)}20%{transform:rotate(14deg)}40%{transform:rotate(-10deg)}60%{transform:rotate(6deg)}80%{transform:rotate(-3deg)}}
@keyframes tssRing{0%{box-shadow:0 0 0 0 rgba(31,143,58,.55),0 8px 20px rgba(0,0,0,.3)}70%{box-shadow:0 0 0 14px rgba(31,143,58,0),0 8px 20px rgba(0,0,0,.3)}100%{box-shadow:0 0 0 0 rgba(31,143,58,0),0 8px 20px rgba(0,0,0,.3)}}
@keyframes tssShine{0%{background-position:-120% 0}60%,100%{background-position:220% 0}}
@media (prefers-reduced-motion: no-preference){
  /* reveal on scroll */
  .rv{opacity:0;transform:translateY(18px);transition:opacity .55s ease var(--d,0ms),transform .55s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
  .rv.in{opacity:1;transform:none}
  /* Everything Under One Roof: icons float gently, wiggle on hover/tap */
  .cat .ci{animation:tssFloat 3.2s ease-in-out infinite;animation-delay:calc(var(--d,0ms) * 2);transition:background .2s,color .2s}
  .cat{transition:transform .2s,box-shadow .2s}
  .cat:hover,.cat:focus-visible{transform:translateY(-3px);box-shadow:0 10px 22px rgba(18,39,95,.18)}
  .cat:hover .ci,.cat:focus-visible .ci,.cat:active .ci{animation:tssWiggle .5s ease;background:var(--navy2);color:var(--gold)}
  /* Special rates: badge pulses, party icon swings, cards lift */
  .offer .pct{display:inline-block;animation:tssPulse 2.2s ease-in-out infinite;border-radius:30px}
  .offer .big .party{display:inline-block;animation:tssSwing 2.6s ease-in-out infinite;transform-origin:70% 90%}
  .ocard{transition:transform .2s,background .2s}
  .ocard:hover,.ocard:focus-visible{transform:translateY(-4px) scale(1.02);background:rgba(255,255,255,.22)}
  .ocard:hover .lg{animation:tssWiggle .5s ease}
  /* Why choose us: icon rings lift and turn gold on hover */
  .wc,.wf{transition:transform .25s,box-shadow .25s}
  .wc:hover{transform:translateY(-4px);box-shadow:0 12px 26px rgba(18,39,95,.12)}
  .wc .wi{transition:transform .3s,background .3s,color .3s}
  .wc:hover .wi{transform:rotate(-8deg) scale(1.08);background:var(--navy2);color:var(--gold)}
  .wf .wi.lg{animation:tssFloat 3.6s ease-in-out infinite}
  /* school tiles: "Save up to" badge shimmer */
  .stile .save{background:linear-gradient(100deg,#e8f7ec 30%,#ffffff 50%,#e8f7ec 70%);background-size:220% 100%;animation:tssShine 3.5s ease-in-out infinite}
  .stile:hover{transform:translateY(-4px)}
  /* WhatsApp button: soft ring every few seconds */
  .fab{animation:tssRing 2.8s ease-out infinite}
  /* follower gift */
  .lock .ph,.lock>b:first-child{display:inline-block}
}
/* ===== premium mobile polish (Oct 2026) ===== */
.hero-pts{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:-8px auto 22px;max-width:640px}
.hero-pts span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);border-radius:30px;padding:5px 12px;font-size:13px;font-weight:600}
/* slim follow bar */
.fbar{padding:12px 14px}
.fbar-h b{display:block;font-size:15.5px;color:var(--navy2)}
.fbar-h span{display:block;color:var(--mut);font-size:13px;margin-top:1px}
.fbar .fbtns{margin-top:8px}
.fbar .fbtn{min-height:34px;font-size:12.5px;padding:5px 12px}
.fbar-more{margin-top:8px}
.fbar-more summary{cursor:pointer;font-weight:600;color:var(--navy);font-size:13px;list-style:none}
.fbar-more summary::-webkit-details-marker{display:none}
.fbar-more summary::after{content:" ▾"}
.fbar-more[open] summary::after{content:" ▴"}
.fbar-more summary span{color:var(--mut);font-weight:500;margin-left:4px}
.fbar-more .perks{margin-top:6px}
/* terms fold-out */
.tc-d{max-width:980px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.tc-d>summary{cursor:pointer;list-style:none;padding:16px 18px;font-weight:700;color:var(--navy2);display:flex;justify-content:space-between;align-items:center;gap:10px}
.tc-d>summary::-webkit-details-marker{display:none}
.tc-d>summary span{font-weight:600;font-size:12.5px;color:var(--navy);background:#eef3ff;border-radius:20px;padding:4px 10px;white-space:nowrap}
.tc-d[open]>summary span::after{content:" ▴"}
.tc-d:not([open])>summary span::after{content:" ▾"}
.tc-d .tc{padding:0 14px 14px}

@media(max-width:640px){
  .sec{padding:34px 0}
  .sec-h{margin-bottom:18px}
  .sec-h h2{font-size:25px}
  .sec-h p{font-size:14px}
  /* hero */
  .hero{padding:26px 0 30px}
  .hero .tag{font-size:12px;padding:5px 12px;margin-bottom:10px}
  .hero h1{font-size:28px;line-height:1.15;margin-bottom:10px}
  .hero p{font-size:14.5px;margin-bottom:18px}
  .hero-pts{gap:6px;margin:-6px auto 18px}
  .hero-pts span{font-size:11.5px;padding:4px 10px}
  .hero .cta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .hero .cta .btn{width:100%;padding:12px 8px;font-size:14px;margin:0}
  /* everything under one roof */
  .cats{padding:18px 0 20px}
  .cats h3{font-size:19px;margin-bottom:12px}
  .catrow{gap:8px}
  .cat{padding:10px 4px;font-size:12px;gap:4px;border-radius:12px}
  .cat .ci{width:38px;height:38px}.cat .ci svg{width:20px;height:20px}
  .cat small{font-size:10.5px}
  /* special rates */
  .offer{padding:22px 0}
  .offer .big{font-size:20px}
  .offer .sub{font-size:12.5px;margin-bottom:12px}
  .ogrid{gap:8px}
  .ocard{flex:0 0 calc(33.333% - 6px);padding:10px 4px;font-size:12px;gap:5px}
  .ocard .lg{width:46px;height:46px}
  .ocard small{font-size:10.5px}
  /* school tiles: 3 per row */
  .school-search{margin-bottom:12px}
  .sgrid{grid-template-columns:repeat(3,1fr);gap:8px}
  .stile{padding:12px 4px 10px;gap:6px;border-radius:14px}
  .stile .lg{width:50px;height:50px}
  .stile h4{font-size:12px;min-height:31px;line-height:1.25}
  .stile small{font-size:10.5px}
  .stile .save{font-size:10px;padding:2px 6px}
  .stile .lg.ini{font-size:17px}
  /* why choose us: compact list */
  .wf{gap:12px}
  .wf .wi.lg{flex:0 0 48px;width:48px;height:48px}.wf .wi.lg svg{width:24px;height:24px}
  .wf p{font-size:13.5px}
  .wgrid{grid-template-columns:1fr;gap:8px}
  .wc{display:grid;grid-template-columns:46px 1fr;column-gap:12px;text-align:left;padding:12px 14px;align-items:center}
  .wc .wi{grid-row:span 2;width:44px;height:44px;margin:0}
  .wc .wi svg{width:22px;height:22px}
  .wc h4{font-size:14.5px;margin:0}
  .wc p{font-size:13px}
  /* community + join */
  .community{padding:20px 0}
  .community h3{font-size:20px}
  .community p{font-size:13.5px}
  .community .btn{width:100%}
  .join h2{font-size:24px}
  .join p{font-size:14px}
  .tc-d>summary{padding:14px}
}
@media(max-width:360px){
  .sgrid,.cats .catrow{gap:6px}
  .stile h4{font-size:11.5px}
  .hero .cta{grid-template-columns:1fr}
}
@media(max-width:640px){
  .pc .ph.none{height:74px;gap:10px}
  .pc .ph.none .emo{font-size:38px}
  .pc .ph.none svg{height:42px}
  .pc .ph.none .nophoto{position:static;font-size:11px}
  .pc .body{padding:12px 14px 14px}
  .pc h4{font-size:16px}
}
/* product photos: model / real switch */
.pc .ph.has{aspect-ratio:4/5;background:#f8f6f1}
.pc .ph.has img{object-fit:contain}
.pc .ph.real img{object-fit:cover}
.phsw{position:absolute;top:10px;right:10px;display:flex;background:rgba(255,255,255,.92);border-radius:20px;padding:3px;box-shadow:var(--sh);gap:2px}
.phsw button{border:0;background:none;border-radius:16px;padding:5px 10px;font-size:12px;font-weight:700;color:var(--navy2);cursor:pointer}
.phsw button.on{background:var(--navy2);color:#fff}
.phnote{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);background:rgba(255,255,255,.88);color:var(--mut);font-size:11px;border-radius:12px;padding:2px 9px;white-space:nowrap}
.pc .ph.real .phnote{display:none}
@media(max-width:640px){.pc .ph.has{aspect-ratio:4/5}}
/* product picture: small preview, tap to enlarge */
.pc .ph.has{aspect-ratio:auto;height:230px;cursor:zoom-in;background:#f8f6f1}
.pc .ph.has img{height:100%;width:100%;object-fit:contain}
.zoomhint{position:absolute;bottom:8px;right:8px;background:rgba(18,39,95,.85);color:#fff;font-size:11px;font-weight:600;border-radius:14px;padding:3px 9px}
.pc .ph.has:focus-visible{outline:3px solid var(--gold);outline-offset:-3px}
@media(max-width:640px){.pc .ph.has{height:190px;aspect-ratio:auto}}
.lb{position:fixed;inset:0;z-index:200;background:rgba(10,18,45,.86);display:none;align-items:center;justify-content:center;padding:14px}
.lb.on{display:flex}
.lb-in{background:#fff;border-radius:16px;width:min(560px,100%);max-height:calc(100vh - 28px);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.lb-h{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}
.lb-h b{color:var(--navy2);font-size:16px}
.lb-tabs{display:flex;gap:6px;padding:10px 14px 0}
.lb-tabs:empty{display:none}
.lb-tabs button{flex:1;border:1.5px solid var(--line);background:#fff;border-radius:20px;padding:7px;font-weight:700;color:var(--navy2);cursor:pointer}
.lb-tabs button.on{background:var(--navy2);border-color:var(--navy2);color:#fff}
#lbImg{flex:1;min-height:0;width:100%;object-fit:contain;background:#f8f6f1;margin-top:10px;max-height:calc(100vh - 170px)}
.lb-note{margin:0;padding:8px 14px 12px;font-size:12px;color:var(--mut);text-align:center}
@media (prefers-reduced-motion: no-preference){.lb.on .lb-in{animation:lbIn .22s ease-out}@keyframes lbIn{from{transform:scale(.96);opacity:0}to{transform:none;opacity:1}}}
.mtag{position:absolute;top:8px;right:8px;background:rgba(255,255,255,.9);color:var(--mut);font-size:10.5px;font-weight:600;border-radius:12px;padding:2px 8px}
.lg.ini.emo-lg{font-size:30px;font-family:inherit}
.medbar{display:flex;align-items:center;gap:14px;margin:0 auto 18px;max-width:640px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,var(--navy),#3f6be0);color:#fff;box-shadow:var(--sh2)}.medbar:hover{color:#fff;transform:translateY(-1px)}.medbar-i{flex:none;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:rgba(255,255,255,.16);font-size:30px}.medbar-t{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.medbar-t b{font-size:16px;line-height:1.3}.medbar-t small{font-size:13.5px;opacity:.9}.medbar-go{flex:none;font-size:30px;line-height:1;color:var(--gold)}

.sg-ages{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:#fff}.sg-ages summary{cursor:pointer}.agetbl{width:100%;border-collapse:collapse;font-size:13px;margin:10px 0;min-width:420px}.agetbl th,.agetbl td{border-bottom:1px solid #e5e7ef;padding:6px;text-align:left;vertical-align:top}.agetbl th{background:#f4f7ff;color:var(--navy)}
.sg-kid{grid-template-columns:1fr 1fr}
.sg-ht{display:grid;grid-template-columns:1fr 1fr;gap:6px}
.sg-more{margin-top:14px;border:1px dashed var(--line);border-radius:12px;padding:10px 12px;background:#fff}
.sg-more summary{cursor:pointer;font-weight:600;color:var(--navy2)}
.sg-more[open] summary{margin-bottom:8px}
.sg-order{display:flex;gap:8px;margin-top:4px}.sg-order .field{flex:1;min-width:0}
#guide .sg-items{grid-template-columns:repeat(5,1fr)}
@media(max-width:420px){#guide .sg-items{grid-template-columns:repeat(3,1fr)}}

/* full uniform (kit) */
.kitbar{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;cursor:pointer;margin:0 0 18px;padding:14px 16px;border-radius:16px;background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;box-shadow:0 10px 24px rgba(18,39,95,.25);font:inherit}
.kitbar .ki{font-size:30px;line-height:1}.kitbar b{display:block;font-size:17px}.kitbar small{display:block;color:#dbe4ff;font-size:13.5px;margin-top:2px}.kitbar .go{margin-left:auto;font-size:26px;color:var(--gold)}
.kitp{text-align:left;max-width:520px;padding:18px}
.kit-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.kit-h h2{margin:0;font-size:21px;color:var(--navy2)}.kit-h small{color:var(--mut)}
.kit-h .x{border:0;background:#eef1f7;border-radius:50%;width:36px;height:36px;font-size:16px;cursor:pointer;flex:0 0 36px}
.kit-g{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:6px 0 12px}.kit-g button{border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:12px;font-weight:700;font-size:15px;cursor:pointer}.kit-g button.on{background:var(--navy);border-color:var(--navy);color:#fff}
.kit-row{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.kit-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--navy)}
.kit-row .nm{font-weight:700;color:var(--ink)}.kit-row .nm small{display:block;font-weight:500;color:var(--mut)}
.kit-row .ctl{grid-column:2;display:flex;gap:8px;align-items:center}.kit-row select{flex:1;min-width:0;padding:9px 10px}.kit-row .pr{font-weight:800;color:var(--navy2);white-space:nowrap;min-width:78px;text-align:right}
.kit-row.kit-off .nm,.kit-row.kit-off .ctl{opacity:.45}.kit-row.err select{border-color:#d22d3a;box-shadow:0 0 0 2px #f5c2c7}
.kit-cat{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--mut);margin-top:12px}
.kit-f{padding:12px 0 4px;margin-top:6px;border-top:1px solid var(--line)}
.kit-tot{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;font-size:17px;margin-bottom:10px}.kit-tot b{color:var(--navy2);font-size:20px}
.kit-more{display:block;text-align:center;font-size:13.5px;margin-top:6px;color:var(--navy);font-weight:600}
#kitSize{display:block;text-align:center}
.kit-xb{display:block;width:100%;margin:12px 0 4px;padding:12px;border:1.5px dashed var(--navy);border-radius:12px;background:#f4f7ff;color:var(--navy2);font:inherit;font-size:14.5px;cursor:pointer;text-align:left}.kit-xb b{float:right}
.kit-was{display:block;font-size:12px;font-weight:500;color:var(--mut)}.kit-tot .kit-was{display:inline;font-size:14px}
.kit-save{flex:1 0 100%;margin-top:8px;padding:8px 10px;border-radius:10px;background:#e8f7ec;color:var(--green);font-size:14.5px;font-weight:600;text-align:center}.kit-save b{color:var(--green);font-size:16px}
.kit-t{font-weight:700;color:var(--navy2);margin:4px 0 6px}.kit-c{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-bottom:10px}.kit-c button{display:flex;align-items:center;justify-content:center;gap:5px;border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:10px 2px;font-weight:700;font-size:13px;cursor:pointer}.kit-c button i{width:16px;height:16px;border-radius:50%;border:1px solid rgba(0,0,0,.2)}.kit-c button.on{border-color:var(--navy);box-shadow:0 0 0 2px var(--navy) inset;background:#eef3ff}
.gjump{display:flex;gap:6px;overflow-x:auto;padding:2px 0 12px;margin-bottom:6px;scrollbar-width:none}.gjump a{flex:0 0 auto;padding:7px 12px;border-radius:20px;background:#fff;border:1px solid var(--line);font-size:13px;font-weight:600;color:var(--navy2);text-decoration:none;white-space:nowrap}.gjump small{color:var(--mut)}.gmore{margin-top:12px}
.acc-list{display:flex;flex-direction:column;gap:10px}
.acc{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.acc-h{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border:0;background:none;cursor:pointer;font:inherit;text-align:left;scroll-margin-top:80px}
.acc-h .acc-i{font-size:28px;line-height:1;flex:0 0 36px;text-align:center}
.acc-t{flex:1;font-weight:700;font-size:16.5px;color:var(--navy2)}.acc-t small{display:block;font-weight:500;font-size:13px;color:var(--mut)}
.acc-a{font-size:26px;color:var(--gold2,#d99f00);transition:transform .2s}.acc.open .acc-a{transform:rotate(90deg)}
.acc.open{box-shadow:0 0 0 2px var(--navy) inset}.acc-b{padding:0 12px 14px}
.bchips{display:flex;gap:6px;overflow-x:auto;padding:2px 0 10px;scrollbar-width:none}.bchips button{flex:0 0 auto;border:1px solid var(--line);background:#f7f8fc;border-radius:20px;padding:7px 12px;font:inherit;font-size:13px;font-weight:600;color:var(--navy2);cursor:pointer;white-space:nowrap}.bchips button small{color:var(--mut);font-weight:500}.bchips button.on{background:var(--navy);border-color:var(--navy);color:#fff}.bchips button.on small{color:#dbe4ff}
.bhead{margin:14px 2px 8px;font-size:15px;color:var(--navy2);border-bottom:2px solid var(--gold);display:inline-block;padding-bottom:2px}.bhead small{color:var(--mut);font-weight:500}
.pill.prem{background:linear-gradient(90deg,#fff4cc,#ffe08a);color:#7a5200;border:1px solid #f1c94a;font-weight:700}.prem-h{border-bottom-color:#f1c94a}

/* offer title: the "Save up to" badge always sits on its own line under the title */
.offer .big .pct{display:table;margin:8px auto 0}
/* owner: Special Rates smaller – all four schools in one row, also on phones */
.ogrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-width:720px}
.ocard,.ocard:only-child{flex:none;padding:10px 4px;font-size:12.5px;gap:5px;border-radius:12px;line-height:1.25}
.ocard .lg{width:48px;height:48px}
.ocard small{font-size:11px}
@media(max-width:480px){.ogrid{gap:6px}.ocard{padding:8px 3px;font-size:11px;gap:4px}.ocard .lg{width:40px;height:40px}.ocard small{font-size:9.5px}.offer .big{font-size:19px}}
/* owner: "Everything Under One Roof" tiles all the same size – 3 per row (3 × 3), 9 in one row on wide screens */
.catrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;gap:12px;max-width:760px;margin:0 auto}
.catrow .cat{flex:none;width:auto;min-width:0;height:100%;justify-content:flex-start}
.catrow .cat small{white-space:nowrap;margin-top:auto}
@media(min-width:1100px){.catrow{grid-template-columns:repeat(9,minmax(0,1fr));max-width:none}}
@media(max-width:480px){.catrow{gap:8px}}
.ustrip{margin-top:16px}
.us-row{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px;scroll-snap-type:x proximity;scrollbar-width:thin}
.us-it{flex:0 0 118px;scroll-snap-align:start;background:#fff;border-radius:14px;overflow:hidden;text-decoration:none;color:var(--navy2);box-shadow:0 6px 16px rgba(0,0,0,.18);transition:transform .2s}
.us-it:hover{transform:translateY(-3px)}
.us-it img{display:block;width:118px;height:118px;object-fit:cover;background:#eef1f7}
.us-it span{display:block;padding:6px 8px 8px;font-weight:700;font-size:12.5px;line-height:1.2}
.us-it small{display:block;font-weight:500;color:var(--mut);font-size:11px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.us-note{font-size:11.5px;opacity:.75;margin-top:4px}
@media(min-width:900px){.us-it{flex-basis:140px}.us-it img{width:140px;height:140px}}
/* school cover picture (all uniforms together) */
.s-cover{position:relative;margin:16px 0 0;border-radius:16px;overflow:hidden;background:#eef0f3;box-shadow:0 10px 28px rgba(0,0,0,.25)}
.s-cover img{display:block;width:100%;height:auto}
.s-cover figcaption{position:absolute;left:10px;top:10px;background:rgba(18,39,95,.82);color:#fff;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:20px}
@media(max-width:699px){.s-cover{margin-top:12px;border-radius:12px}.s-cover img{aspect-ratio:2.4/1;object-fit:cover;object-position:100% 100%}}
/* owner: cover picture full width; on computers the school name sits ON the picture with a see-through background */
.s-ov{display:none}
@media(min-width:700px){
  .school-head.has-cover .in{display:none}
  .school-head.has-cover .s-cover{margin-top:14px}
  .s-ov{display:flex;align-items:center;gap:14px;position:absolute;left:2.5%;top:50%;transform:translateY(-58%);z-index:2;padding:0;
    background:transparent;color:var(--navy2);max-width:29%}
  .s-ov .lg{width:clamp(44px,5vw,62px);height:clamp(44px,5vw,62px);flex:none}
  .s-ov h2{font-family:var(--serif);font-size:clamp(17px,2.25vw,28px);line-height:1.15;margin:0;color:var(--navy2);text-shadow:0 0 8px #fff,0 0 2px #fff}
  .s-ov p{font-size:clamp(11px,1.1vw,13.5px);font-weight:600;color:#33415f;margin:3px 0 0;text-shadow:0 0 6px #fff}
  .school-head.has-cover .s-cover figcaption{left:12px;top:12px}
}
/* pop-up promos while browsing */
.promo{position:fixed;left:16px;bottom:18px;z-index:180;max-width:340px;width:calc(100% - 110px);transform:translateY(140%);opacity:0;transition:transform .45s cubic-bezier(.2,.9,.3,1.2),opacity .3s;pointer-events:none}
.promo.on{transform:none;opacity:1;pointer-events:auto}
.promo-in{display:flex;gap:12px;align-items:center;background:#fff;border-radius:16px;padding:12px 34px 12px 12px;box-shadow:0 14px 34px rgba(10,20,50,.28);border:2px solid var(--gold);text-decoration:none;color:var(--ink)}
.promo-i{flex:0 0 50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#fff4cc,#ffe08a);display:flex;align-items:center;justify-content:center;font-size:28px}
.promo-t b{display:block;color:var(--navy2);font-size:15px}.promo-t small{display:block;color:var(--mut);font-size:12.5px;line-height:1.3;margin-top:2px}
.promo-t em{display:block;font-style:normal;font-weight:700;color:var(--green);font-size:13px;margin-top:4px}
.promo-x{position:absolute;top:6px;right:6px;width:26px;height:26px;border:0;border-radius:50%;background:#eef1f7;color:var(--mut);cursor:pointer;font-size:12px}
@media (prefers-reduced-motion: reduce){.promo{transition:opacity .2s}}
.fnext span{display:block;margin-top:4px}.fnext .fbtn{display:inline-block;margin-top:8px;background:var(--navy);color:#fff;border-radius:20px;padding:7px 14px;font-weight:700;font-size:13.5px;text-decoration:none}
.lvl2{background:#fff8e1;border:1px solid #f1d27a}.lvl2 span{display:block;margin:3px 0 8px;color:var(--mut)}
.fslim{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;background:#eef8f1;border:1px solid #cde9d6;border-radius:12px;padding:8px 12px;font-size:13.5px;margin-bottom:10px}
.fslim span{color:var(--green);margin-right:auto}.fslim a,.fslim button{border:0;background:#fff;border:1px solid var(--line);border-radius:20px;padding:5px 11px;font:inherit;font-size:12.5px;font-weight:700;color:var(--navy2);text-decoration:none;cursor:pointer}
.fslim button{background:#fff8e1;border-color:#f1d27a}
.cshare{margin-top:16px;background:#fff8e1;border:1px solid #f1d27a;border-radius:12px;padding:12px;font-size:14px}.cshare span{display:block;color:var(--mut);margin:3px 0 8px;font-size:13px}

/* customer reviews */
.reviews{background:#fff}
.rv-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;max-width:1000px;margin:0 auto}
.rvc{margin:0;background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:16px 16px 14px;display:flex;flex-direction:column;gap:8px}
.rv-s{color:var(--gold2);font-size:18px;letter-spacing:2px}
.rvc blockquote{margin:0;color:var(--ink);font-size:15px;line-height:1.5}
.rvc figcaption{font-size:13px;color:var(--mut);margin-top:auto}
.rvc figcaption b{color:var(--navy2)}
.rvc figcaption small{display:block;font-size:12px}
.rv-empty{grid-column:1/-1;text-align:center;color:var(--mut);background:var(--bg);border:1px dashed var(--line);border-radius:14px;padding:22px 16px}
.rv-avg{color:var(--navy2);font-size:18px}.rv-avg span{color:var(--gold2);letter-spacing:1px}
.rv-act{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.rv-note{text-align:center;color:var(--mut);margin-top:10px}
.rv-stars{display:flex;justify-content:center;gap:4px;margin:6px 0 2px}
.rv-stars button{border:0;background:none;font-size:40px;line-height:1;color:#d8d3c8;cursor:pointer;padding:2px 4px;min-width:44px;min-height:44px}
.rv-stars button.on{color:var(--gold)}
.rv-ok{gap:6px;margin-top:10px;font-size:14px;text-align:left;justify-content:flex-start}
#revM textarea{resize:vertical}
.prv{margin-top:28px;padding-top:20px;border-top:1px solid var(--line)}
.prv-h{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;margin-bottom:12px}
.prv-h h3{font-size:20px;color:var(--navy2);margin:0}
.prv-h small{color:var(--mut)}
.prv-0{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;background:#fff;border:1px dashed var(--line);border-radius:12px;padding:12px 14px;color:var(--mut);font-size:14px}

/* installable app */
.appsec{background:linear-gradient(135deg,var(--navy2),var(--navy));color:#fff;padding:22px 0}
.appsec .in{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.appsec img{width:64px;height:64px;border-radius:16px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.appsec .in>div{flex:1 1 220px}
.appsec h3{font-size:19px;color:#fff;margin:0 0 4px}
.appsec p{margin:0;font-size:14px;opacity:.88}
.appbtn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin:12px 0;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.08);color:inherit;border-radius:10px;padding:9px 14px;font:600 14px var(--sans);cursor:pointer}
.appbtn small{font-weight:400;font-size:12px;opacity:.8}
.ios-steps{text-align:left;margin:10px 0 12px;padding-left:22px;line-height:1.7}
