:root{--font-heading:Inter, "Segoe UI", sans-serif;--font-body:Inter, "Segoe UI", sans-serif;--navy:#17212b;--navy-soft:#44515e;--cyan:#f0645a;--blue:#44515e;--ink:#17212b;--muted:#44515e;--cloud:#fff7ec;--line:#c8d0d6;--white:#fff;--gold:#e8b44f}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--white);font-family:var(--font-body), Arial, sans-serif;margin:0}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}.site-header{background:#fff;justify-content:space-between;align-items:center;height:96px;padding:0 clamp(24px,6vw,88px);display:flex}.brand{flex-wrap:wrap;align-items:center;gap:13px;text-decoration:none;display:flex}.brand-logo{object-fit:contain;width:240px;max-width:100%;height:60px;display:block}.brand img{object-fit:contain;width:240px;height:60px}.unavailable-page .brand-logo,.status-card .brand-logo{margin:0 auto 1.5rem}.brand small{flex-basis:100%}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.brand span{flex-direction:column;display:flex}.brand strong{font:600 23px/1 var(--font-heading);letter-spacing:-.7px;color:var(--navy)}.brand small{color:var(--muted);margin-top:6px;font-size:11px}.basket-link{color:var(--navy);align-items:center;gap:10px;font-weight:700;text-decoration:none;display:flex}.basket-link span{width:28px;height:28px;color:var(--ink);background:var(--cyan);border-radius:50%;place-items:center;display:grid}.hero{background:var(--navy);grid-template-columns:46% 54%;min-height:650px;display:grid;overflow:hidden}.hero-copy{z-index:1;color:#fff;padding:100px clamp(32px,6vw,90px);position:relative}.hero-copy:after{content:"";pointer-events:none;border:70px solid #e8b44f21;border-radius:50%;width:420px;height:420px;position:absolute;bottom:-220px;right:-120px}.kicker{color:var(--cyan);font:700 12px/1 var(--font-heading);text-transform:uppercase;letter-spacing:2.2px;display:inline-block}.kicker.dark{color:var(--blue)}.hero h1{max-width:650px;font:800 clamp(52px, 6vw, 88px)/.98 var(--font-heading);letter-spacing:-4px;margin:24px 0}.hero h1 em{color:var(--cyan);font-style:normal;display:block}.hero-copy p{color:#c8d0d6;max-width:540px;margin-bottom:38px;font-size:18px;line-height:1.7}.primary-button{color:var(--navy);background:var(--cyan);text-transform:uppercase;font:800 12px/1 var(--font-heading);letter-spacing:1.1px;border-radius:3px;padding:17px 25px;text-decoration:none;display:inline-block}.hero-photo{background:linear-gradient(90deg, var(--navy) 0%, transparent 22%), linear-gradient(0deg, #17212bb8, transparent 42%), linear-gradient(135deg, var(--navy), var(--navy-soft));min-height:650px;position:relative}.festival-badge{border-left:5px solid var(--cyan);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#17212be0;width:min(380px,84%);padding:24px 28px;position:absolute;bottom:8%;left:8%}.festival-badge span{color:var(--cyan);font:700 11px var(--font-heading);text-transform:uppercase;letter-spacing:1.8px;margin-bottom:7px;display:block}.festival-badge strong{font:700 20px var(--font-heading)}.steps{background:var(--cyan);grid-template-columns:repeat(4,1fr);padding:0 clamp(24px,6vw,88px);display:grid}.steps div{border-right:1px solid #17212b29;align-items:center;gap:16px;padding:26px 18px;display:flex}.steps div:last-child{border:0}.steps b{color:#17212b6b;font:800 22px var(--font-heading)}.steps span{color:var(--navy);font-size:14px;font-weight:700}.products-section,.basket-section{padding:110px clamp(24px,6vw,88px)}.section-heading{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:46px;display:flex}.section-heading h2,.modal h2{color:var(--navy);font:800 clamp(38px, 4vw, 58px)/1 var(--font-heading);letter-spacing:-2.5px;margin:12px 0 0}.section-heading>p{max-width:420px;color:var(--muted);margin:0;line-height:1.7}.product-grid{grid-template-columns:repeat(6,1fr);gap:20px;display:grid}.product-card{color:#fff;background:var(--navy);flex-direction:column;grid-column:span 2;min-height:390px;padding:30px;display:flex;position:relative;overflow:hidden}.product-card:nth-child(4),.product-card:nth-child(5){grid-column:span 3}.product-card.cyan{background:#44515e}.product-card.blue{background:#17212b}.product-card:after{content:"";border:42px solid #ffffff17;border-radius:50%;width:220px;height:220px;position:absolute;top:-80px;right:-75px}.product-number{color:#ffffff29;font:900 62px var(--font-heading);position:absolute;top:20px;right:25px}.product-eyebrow{color:#e8b44f;font:700 11px var(--font-heading);text-transform:uppercase;letter-spacing:1.6px}.product-card h3{max-width:80%;font:700 27px/1.1 var(--font-heading);margin:18px 0 12px}.product-card p{color:#fff7ec;max-width:85%;margin:0;line-height:1.55}.product-card ul{color:#c8d0d6;margin:24px 0;padding:0;font-size:13px;list-style:none}.product-card li{margin:7px 0}.product-card li:before{content:"↗";color:var(--cyan);margin-right:8px}.product-footer{justify-content:space-between;align-items:center;gap:15px;margin-top:auto;display:flex}.product-footer strong{font:700 26px var(--font-heading)}.product-footer button{color:var(--navy);cursor:pointer;background:#fff;border:0;border-radius:2px;padding:12px 15px;font-weight:700}.basket-section{background:var(--cloud)}.basket-panel{background:#fff;max-width:1080px;margin:0 auto;padding:50px;box-shadow:0 24px 70px #14334b1a}.section-heading.compact{align-items:center;margin-bottom:32px}.section-heading.compact h2{font-size:42px}.basket-total{color:var(--navy);font:800 34px var(--font-heading)}.empty-basket{text-align:center;border:1px dashed #bdccd6;place-items:center;min-height:210px;padding:30px;display:grid}.empty-basket span{color:#dce7ed;font:900 70px var(--font-heading)}.empty-basket p{color:var(--muted)}.empty-basket a{color:var(--blue);font-weight:700}.cart-line{border-top:1px solid var(--line);justify-content:space-between;gap:30px;padding:22px 0;display:flex}.cart-line>div{flex-direction:column;gap:7px;display:flex}.cart-line span{color:var(--muted);font-size:13px}.cart-line button{color:#b74343;cursor:pointer;text-align:right;background:0 0;border:0;padding:0;font-size:12px}.customer-form{border-top:2px solid var(--navy);margin-top:45px;padding-top:38px}.customer-form h3{color:var(--navy);font:700 24px var(--font-heading);margin:0 0 24px}.form-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}label{color:var(--navy);font-size:13px;font-weight:700}input{border:1px solid #bfcdd6;border-radius:2px;outline:none;width:100%;margin-top:8px;padding:14px 15px}input:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0876d11f}.checkout-button{width:100%;color:var(--ink);background:var(--cyan);cursor:pointer;font:700 14px var(--font-heading);border:0;border-radius:2px;margin-top:25px;padding:18px 25px}.checkout-button:disabled{opacity:.45;cursor:not-allowed}.secure-note{color:var(--muted);text-align:center;font-size:12px}.form-error{color:#a12929;font-weight:700}.modal-backdrop{z-index:10;background:#020f1cd1;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;width:min(560px,100%);max-height:92vh;padding:42px;position:relative;overflow-y:auto}.modal h2{margin-bottom:16px;font-size:42px}.modal>p{color:var(--muted);line-height:1.55}.modal form{gap:18px;margin-top:28px;display:grid}.modal label small{color:var(--muted);margin-top:6px;font-weight:400;display:block}.modal .checkout-button{margin-top:5px}.modal-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:30px;position:absolute;top:14px;right:18px}footer{color:#c4d3dd;background:var(--navy);align-items:center;gap:24px;padding:38px clamp(24px,6vw,88px);font-size:13px;display:flex}footer strong{color:#fff;font:900 20px var(--font-heading)}footer a{margin-left:auto}.status-page{color:#fff;background:var(--navy);place-items:center;min-height:100vh;padding:24px;display:grid}.status-card{width:min(620px,100%);color:var(--ink);text-align:center;background:#fff;padding:56px}.status-card img{object-fit:contain;width:240px;max-width:100%;height:60px}.status-icon{width:54px;height:54px;color:var(--ink);background:var(--cyan);border-radius:50%;place-items:center;margin:24px auto;font-size:28px;font-weight:700;display:grid}.status-card h1{color:var(--navy);font:800 48px/1 var(--font-heading);letter-spacing:-2px;margin:16px 0}.status-card p{color:var(--muted);margin:0 auto 30px;line-height:1.7}.admin-page{background:#fff7ec;min-height:100vh;padding:60px clamp(22px,5vw,72px)}.admin-header{justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px;display:flex}.admin-header h1{color:var(--navy);font:800 58px/1 var(--font-heading);letter-spacing:-3px;margin:10px 0 0}.admin-header a{color:var(--blue);font-weight:700}.admin-stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px;display:grid}.admin-stats div{background:#fff;flex-direction:column;gap:12px;padding:24px;display:flex}.admin-stats span{color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-size:12px}.admin-stats strong{color:var(--navy);font:800 30px var(--font-heading)}.order-list{gap:18px;display:grid}.admin-empty{color:var(--muted);text-align:center;background:#fff;padding:70px}.admin-order{border-left:5px solid var(--cyan);background:#fff;padding:30px}.order-topline{justify-content:space-between;gap:30px;display:flex}.order-topline h2{color:var(--navy);font:700 24px var(--font-heading);margin:10px 0 6px}.order-topline p{color:var(--muted);margin:5px 0;font-size:13px}.order-topline>strong{color:var(--navy);font:800 25px var(--font-heading)}.payment-pill{color:#735e12;text-transform:uppercase;letter-spacing:1px;background:#fff3bd;border-radius:2px;padding:5px 9px;font-size:10px;font-weight:800;display:inline-block}.payment-pill.paid{color:#116640;background:#d9f6e8}.payment-pill.failed{color:#8a2525;background:#ffe1e1}.admin-items{border-top:1px solid var(--line);margin:24px 0}.admin-item{border-bottom:1px solid var(--line);grid-template-columns:240px 1fr;gap:30px;padding:18px 0;display:grid}.admin-item>strong{color:var(--navy)}.admin-item>div{flex-wrap:wrap;gap:9px;display:flex}.admin-item span{color:var(--navy);background:var(--cloud);gap:9px;padding:8px 10px;font-size:13px;display:flex}.admin-item span b{color:var(--muted)}.order-status{color:var(--muted);align-items:center;gap:24px;font-size:12px;display:flex}.admin-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.admin-actions button{color:#fff;background:var(--blue);cursor:pointer;border:0;padding:10px 13px;font-size:12px;font-weight:700}.admin-actions button.secondary{color:var(--navy);background:#dce8ef}.admin-actions button:disabled{opacity:.4;cursor:not-allowed}.admin-actions small{color:#a12929}@media (max-width:900px){.hero{grid-template-columns:1fr}.hero-copy{padding-top:80px;padding-bottom:80px}.hero-photo{min-height:440px}.steps{grid-template-columns:1fr 1fr}.product-card,.product-card:nth-child(4),.product-card:nth-child(5){grid-column:span 3}.admin-stats{grid-template-columns:1fr 1fr}.order-status{flex-direction:column;align-items:flex-start}.admin-actions{margin-left:0}}@media (max-width:620px){.site-header{height:82px;padding:0 18px}.brand img{width:46px;height:46px}.brand small{display:none}.hero-copy{padding:65px 24px}.hero h1{letter-spacing:-3px;font-size:52px}.hero-photo{min-height:360px}.steps{grid-template-columns:1fr;padding:10px 24px}.steps div{border-bottom:1px solid #17212b26;border-right:0}.section-heading{display:block}.section-heading>p{margin-top:22px}.product-grid{display:block}.product-card{min-height:360px;margin-bottom:16px}.basket-panel{padding:28px 20px}.form-grid{grid-template-columns:1fr}.cart-line{gap:15px}.modal{padding:36px 22px 24px}footer{flex-direction:column;align-items:flex-start}footer a{margin-left:0}.status-card{padding:42px 22px}.status-card h1{font-size:38px}.admin-header{flex-direction:column;align-items:flex-start}.admin-header h1{font-size:46px}.admin-stats{grid-template-columns:1fr}.admin-order{padding:22px 18px}.admin-item{grid-template-columns:1fr;gap:10px}.admin-actions{flex-direction:column;align-items:stretch;width:100%}}
.unavailable-page{background:var(--cloud);place-items:center;min-height:100vh;padding:2rem;display:grid}.unavailable-page section{text-align:center;background:#fff;border-radius:18px;max-width:620px;padding:3rem;box-shadow:0 18px 55px #071a3515}.unavailable-page h1{margin:.75rem 0 1rem}.gallery-hero{min-height:360px}.ordering-closed-banner{z-index:100;color:#fff;text-align:center;width:100%;font:800 clamp(1rem, 2vw, 1.3rem)/1.45 var(--font-heading);letter-spacing:.01em;background:#941f25;border-bottom:4px solid #ffd166;padding:1.15rem clamp(1.5rem,6vw,5.5rem);position:sticky;top:0;box-shadow:0 8px 24px #430a0d47}.gallery-section{background:var(--cloud);padding:5rem 5vw}.gallery-layout{grid-template-columns:240px minmax(0,1fr);align-items:start;gap:2rem;display:grid}.gallery-albums{background:#fff;border-radius:12px;padding:1.25rem;position:sticky;top:1rem}.gallery-albums section+section{margin-top:1.25rem}.gallery-albums strong,.gallery-albums a{display:block}.gallery-albums strong{margin-bottom:.5rem}.gallery-albums a{color:var(--ink);border-radius:6px;padding:.55rem .7rem;text-decoration:none}.gallery-albums a.active{background:var(--gold);color:var(--ink);font-weight:700}.gallery-breadcrumb{margin-bottom:1rem;font-weight:700}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:1rem;display:grid}.gallery-grid article,.picker-grid>button{border:1px solid var(--line);text-align:left;background:#fff;border-radius:10px;padding:0;overflow:hidden}.gallery-image{aspect-ratio:4/3;background:var(--cloud);position:relative}.gallery-image img{object-fit:contain}.gallery-grid article>strong,.picker-grid>button>span{text-overflow:ellipsis;white-space:nowrap;padding:.7rem;display:block;overflow:hidden}.gallery-picker{width:min(1000px,94vw);max-width:94vw;max-height:90vh;overflow:auto}.gallery-picker>select{max-width:100%;margin-bottom:1rem}.picker-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));max-height:48vh;overflow:auto}.picker-grid>button:disabled{opacity:.45}.picker-selections{flex-wrap:wrap;gap:.5rem;margin:1rem 0;display:flex}.picker-selections button{background:#fff;border:1px solid #b9c5d1}@media (max-width:760px){.ordering-closed-banner{padding:.9rem 1.25rem}.gallery-layout{grid-template-columns:1fr}.gallery-albums{position:static}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
