:root{--bg: #050505;--surface: #0f0f0f;--surface-2: #171717;--ink: #f5f5f5;--muted: #b8b8b8;--accent: #ffffff;--accent-strong: #dedede;--line: #2a2a2a}*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:var(--ink);background:var(--bg)}body:before{content:"";position:fixed;inset:0;background:url(/images/Osterparty.png) center center / 50vh no-repeat;opacity:.04;pointer-events:none;z-index:-1}a{color:inherit}.skip-link{position:absolute;left:.5rem;top:-10rem;z-index:1000;background:#000;color:#fff;padding:.75rem 1rem}.skip-link:focus{top:.5rem}.page-layout{display:flex;min-height:100vh}.page-content{flex:1;min-width:0;display:flex;flex-direction:column}.cart-sidebar{position:relative;width:370px;flex-shrink:0;border-left:1px solid var(--line);overflow-y:auto}.cart-sidebar:before{content:"";position:absolute;inset:0;background:url(/images/Osterparty.png) center 20% / cover no-repeat;opacity:.22;pointer-events:none}.cart-sidebar .panel{position:relative;z-index:1;background:#050505a6;border:none;border-radius:0;min-height:100%;padding:1.2rem}.hero{display:flex;align-items:flex-start;gap:clamp(.85rem,2.6vw,1.7rem);padding:clamp(1rem,1.7vw,1.7rem) clamp(1rem,4vw,3rem);border-bottom:1px solid var(--line);flex-wrap:wrap}.hero-info{margin-left:auto;min-width:0;max-width:320px;font-size:.9rem}.hero-info .info-block{margin-bottom:.9rem}.hero-info .info-block:last-child{margin-bottom:0}.hero-info .info-block h3{font-size:.8rem}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.hero-logo{width:clamp(68px,10vw,136px);height:auto;border-radius:.6rem;flex-shrink:0}.hero-text-block{min-width:0}.hero .kicker{margin:0;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}h1{margin:.3rem 0 .6rem;font-size:clamp(1.5rem,4vw,2.5rem);line-height:1.04}.hero h1{margin:.25rem 0 .5rem;font-size:clamp(1.75rem,4.3vw,3.25rem)}h2{margin-top:0;font-size:clamp(1.35rem,3vw,2rem)}.hero-text{max-width:56ch;margin:0}main{flex:1;max-width:1150px;width:100%;margin:0 auto;padding:1rem}.notice{margin:0 0 1rem;padding:.6rem .8rem;border-radius:.5rem;border:1px solid #3a3a3a;background:var(--surface-2)}.products-grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.product-card{background:var(--surface);border:1px solid var(--line);border-radius:.9rem;overflow:hidden}.product-image{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;background:#111}.product-image-wrapper{position:relative}.image-toggle{position:absolute;bottom:.5rem;left:50%;transform:translate(-50%);display:flex;gap:2px;background:#0009;border-radius:.5rem;padding:2px}.toggle-btn{all:unset;padding:.3rem .65rem;font-size:.78rem;font-weight:600;color:#ccc;border-radius:.4rem;cursor:pointer;min-height:auto;width:auto;margin:0;border:none;background:transparent}.toggle-btn.active{background:#fff;color:#000}.toggle-btn:hover:not(.active){color:#fff}.product-content{padding:.85rem}.price{font-weight:700}.field-label{display:block;margin-bottom:.2rem}select,input,button{width:100%;min-height:44px;border-radius:.6rem;border:1px solid #3c3c3c;background:#0b0b0b;color:var(--ink);padding:.55rem .7rem;font:inherit}button{margin-top:.65rem;background:var(--accent);border-color:var(--accent-strong);color:#0b0b0b;font-weight:600;cursor:pointer}button:hover{background:var(--accent-strong)}button:focus-visible,select:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #ffffff;outline-offset:2px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:.9rem;padding:1rem}.info-block{margin-bottom:1.25rem}.info-block:last-child{margin-bottom:0}.info-block h3{font-size:.95rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted);margin:0 0 .4rem}.info-block p{margin:0;line-height:1.5;color:var(--ink)}.partner-link{display:inline-flex;align-items:center;gap:.35rem;text-decoration:underline;text-underline-offset:.2em}.partner-link:hover,.partner-link:focus{color:var(--accent)}.partner-link img{vertical-align:middle}.cart-list,.summary-list{list-style:none;margin:0;padding:0}.cart-list li{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid rgba(255,255,255,.1);padding:.8rem 0}.cart-list li:first-child{padding-top:0}.cart-actions{text-align:right}.cart-actions button{width:auto;padding-inline:.8rem}.cart-total{font-size:1.05rem;font-weight:700}form{display:grid;gap:.65rem}.payment-box{border:1px dashed rgba(255,255,255,.2);border-radius:.7rem;padding:.85rem;background:#0000004d}.payment-box h3{margin-top:0}.payment-method{border-top:1px solid rgba(255,255,255,.1);padding-top:.6rem;margin-top:.6rem}.payment-method:first-of-type{border-top:none;padding-top:0;margin-top:0}.payment-method h4{margin:0 0 .3rem;font-size:.95rem;letter-spacing:.03em;text-transform:uppercase;color:var(--muted)}.payment-method p{margin:0}.payment-hint{font-size:.9rem;padding:.75rem 1rem;background:#ffffff0f;border-left:3px solid var(--muted);border-radius:0 4px 4px 0;color:var(--muted)}.error{color:#ff8f8f}.success-panel{max-width:640px}.order-number{font-size:1.25rem;padding:.75rem 1rem;background:var(--surface-2);border:1px solid var(--line);border-radius:6px;text-align:center;letter-spacing:.04em}.order-number strong{font-size:1.5rem;color:var(--accent)}footer{border-top:1px solid var(--line);padding:1rem}footer nav{max-width:1150px;margin:0 auto;display:flex;gap:1rem}@media(max-width:880px){.hero-info{margin-left:0;margin-top:.5rem;max-width:none;width:100%}}@media(max-width:899px){.page-layout{flex-direction:column}.cart-sidebar{width:100%;border-left:none;border-top:1px solid var(--line)}}@media(prefers-reduced-motion:no-preference){button,a{transition:transform .16s ease,background-color .16s ease}button:active{transform:translateY(1px)}}
