/* T-World skin — dark, futuristic layer on top of theme.css */
html{background:var(--paper);color-scheme:dark}
body{background:var(--paper);color:var(--ink);font-family:var(--sans)}
body{overflow-x:clip}
@supports not (overflow:clip){body{overflow-x:hidden}}
a:hover{color:var(--accent)}
::selection{background:var(--acc);color:#fff}
h1,h2,h3,h4,h5,h6{font-weight:500;letter-spacing:-.02em}
.tw-mono{font:500 11px/1.4 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}
.tw-eyebrow{display:flex;align-items:center;gap:12px;font:500 12px/1.4 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--faint);margin-bottom:18px}
.tw-eyebrow--live{color:#9CC2FF}
.tw-dot{width:8px;height:8px;border-radius:50%;background:var(--acc);box-shadow:0 0 14px 3px rgba(47,123,255,.8);animation:twBlink 2s infinite;flex:none}
.tw-h2,.ap-h2{margin:0;font:400 clamp(26px,3.8vw,56px)/1.06 var(--display);letter-spacing:-.01em;text-wrap:balance;overflow-wrap:anywhere}
.ap-h3{font:400 clamp(20px,2.4vw,28px)/1.15 var(--display);letter-spacing:0}
.tw-lead{margin:0;max-width:440px;font:400 17px/1.6 var(--sans);color:var(--mute);text-wrap:pretty}
.tw-grad{background:linear-gradient(100deg,#fff 10%,#9CC2FF 45%,var(--acc) 80%);-webkit-background-clip:text;background-clip:text;color:transparent}
@keyframes twBlink{0%,100%{opacity:1}50%{opacity:.25}}
@keyframes twSpin{to{transform:rotate(360deg)}}
@keyframes twFloat{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-16px) rotate(1deg)}}
@keyframes twPulse{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
@keyframes twScan{0%{top:-35%}60%,100%{top:105%}}
@keyframes twLine{from{transform:translateY(105%)}to{transform:none}}
@keyframes twBar{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes twNum{from{opacity:0;transform:translateY(30%) scale(.96);filter:blur(14px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes twSweep{from{transform:translateX(-120%)}to{transform:translateX(120%)}}

/* Buttons */
.ap-btn,.button,button.button,a.button,.wc-forward,#place_order,.woocommerce-button,.wp-element-button,.ap-searchform button{background:var(--acc);border-color:var(--acc);color:#fff;font-weight:600;box-shadow:0 14px 40px -16px rgba(47,123,255,.9);transition:background .3s,transform .3s var(--ease),box-shadow .3s,border-color .3s}
.ap-btn:hover,.button:hover,a.button:hover,#place_order:hover{background:var(--acc2);border-color:var(--acc2);color:#fff;transform:translateY(-2px);box-shadow:0 20px 50px -14px rgba(47,123,255,1)}
.ap-btn svg{flex:none}
.ap-btn--ghost{background:rgba(255,255,255,.03);border-color:var(--line2);color:var(--ink);box-shadow:none;backdrop-filter:blur(8px)}
.ap-btn--ghost:hover{background:rgba(47,123,255,.1);border-color:var(--accent);color:#fff;box-shadow:none}
.ap-btn--light{background:var(--ink);border-color:var(--ink);color:var(--paper);box-shadow:none}
.ap-btn--light:hover{background:#fff;border-color:#fff;color:var(--paper)}
.tw-btn-sm{min-height:48px;padding:0 22px}
.tw-round{width:48px;height:48px;border-radius:50%;border:1px solid var(--line2);background:transparent;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;transition:border-color .3s,background .3s}
.tw-round:hover{border-color:var(--acc);background:rgba(47,123,255,.1)}
.tw-round[data-rail=prev] svg{transform:rotate(180deg)}
:focus-visible{outline:2px solid var(--accent)}
input:focus,select:focus,textarea:focus{border-color:var(--acc);box-shadow:0 0 0 3px rgba(47,123,255,.18)}

/* Ticker + header */
.bb-ticker{background:var(--acc);font:500 11px/1 var(--mono);letter-spacing:.16em}
.bb-ticker__track{animation-duration:60s}
.bb-ticker__item::after{border-radius:0;transform:rotate(45deg);width:5px;height:5px;opacity:.75}
.ap-header,.ap-header.is-solid,.ap-header.is-mega,.ap-header.is-over:not(.is-solid):not(.is-mega){background:rgba(5,7,12,.72);-webkit-backdrop-filter:blur(20px) saturate(150%);backdrop-filter:blur(20px) saturate(150%);border-bottom:1px solid var(--line);color:var(--ink)}
.bb-header .ap-logo img,.ap-header--co .ap-logo img{height:24px;width:auto;max-width:min(240px,46vw);object-fit:contain}
.ap-nav__list>li>a{font:500 14px/1.2 var(--sans);color:#C9D1DE;padding:10px 14px;height:auto;border-radius:var(--pill);transition:background .3s,color .3s}
.ap-mnav>li>a,.ap-mnav>li>.ap-mrow>a{font:400 clamp(20px,6vw,26px)/1.3 var(--display)}
.ap-nav__list>li>a:hover,.ap-nav__list>li.current-menu-item>a{color:#fff;background:rgba(255,255,255,.07);text-decoration:none}
.ap-nav__list{gap:2px}
.ap-nav .sub-menu{background:rgba(9,12,20,.97);border:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(0,0,0,.8)}
.ap-nav .sub-menu a{color:#C9D1DE}
.ap-nav .sub-menu a:hover{color:var(--accent)}
.ap-mega{background:rgba(7,10,17,.97);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);border-bottom:1px solid var(--line)}
.ap-mega__cats a{color:#C9D1DE}
.ap-mega__cats a:hover{color:var(--accent)}
.ap-actions .ap-icon-btn:not(.ap-cart-btn){border:1px solid var(--line);border-radius:50%;margin-left:4px}
.ap-actions .ap-icon-btn:not(.ap-cart-btn):hover{border-color:var(--accent);opacity:1}
.ap-cart-btn{box-shadow:0 8px 28px -10px rgba(47,123,255,.9)}
.ap-cart-count{background:var(--ink);color:var(--paper);border-color:var(--paper)}
@media (max-width:1119px){.bb-header .ap-logo img{height:18px}.ap-menu__logo{height:18px!important;width:auto}}
@media (max-width:399px){.bb-header .ap-logo img{height:15px}}

/* Drawers, search, overlays */
.ap-overlay{background:rgba(0,0,0,.6);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.ap-drawer{background:#090C14;border-color:var(--line)}
.ap-drawer--right{box-shadow:-40px 0 120px -40px rgba(47,123,255,.4)}
.ap-search{background:rgba(3,5,10,.94);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.ap-search__bar input[type=search]{background:transparent;border:0;border-bottom:1px solid rgba(79,163,255,.5);border-radius:0;font:400 clamp(20px,3vw,34px)/1.2 var(--display);color:#fff;box-shadow:none}
.ap-quick{background:#090C14}
.ap-progress__bar{background:rgba(255,255,255,.1)}
.ap-progress__bar span,.ap-progress__fill{background:var(--acc);box-shadow:0 0 12px var(--acc)}
.tw-socials--menu{margin-top:28px}

/* Cards */
ul.products{gap:32px 18px}
.ap-card__media{border-radius:22px;border:1px solid var(--line);background:var(--surf);transition:transform .6s var(--ease),border-color .4s,box-shadow .6s;will-change:transform}
.ap-card__media img{transition:transform 1.2s var(--ease),opacity .5s}
.ap-card:hover .ap-card__media{border-color:rgba(79,163,255,.55);box-shadow:0 40px 90px -30px rgba(47,123,255,.6)}
.ap-card:hover .ap-card__main{transform:scale(1.06)}
.tw-glare{position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;border-radius:inherit}
.ap-card__title{font:500 15px/1.35 var(--sans);color:var(--ink);overflow-wrap:anywhere}
.tw-card__model{display:block;font:500 10.5px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px}
.price,.ap-card .price{font:600 15px var(--sans);color:var(--ink)}
.ap-card .price ins,.ap-price-row .price ins,.ap-search__price ins{color:var(--accent)}
.ap-wish{background:rgba(5,7,12,.55);border:1px solid rgba(255,255,255,.12);color:var(--ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ap-card__add{background:var(--acc);color:#fff;box-shadow:0 10px 30px -8px rgba(47,123,255,.9)}
.ap-card__add:hover{background:var(--acc2)}
.ap-card__add--muted{background:rgba(5,7,12,.85);box-shadow:none}
.ap-badge{font-family:var(--mono)!important;letter-spacing:.12em!important}
.ap-badge--new{background:rgba(5,7,12,.6);color:#CFE2FF;box-shadow:inset 0 0 0 1px rgba(79,163,255,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
.ap-badge--sale{background:var(--acc);color:#fff}
.ap-badge--soldout,.bb-card-soldout{background:#000;color:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.35)}
.ap-chip{border-color:var(--line2);color:#C9D1DE}
.ap-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.bb-size span{color:#C9D1DE}
.bb-size input:checked+span{background:rgba(47,123,255,.18);border-color:var(--acc);color:#fff;box-shadow:0 0 0 3px rgba(47,123,255,.18)}
.ap-swatch.is-on{background:rgba(47,123,255,.18);border-color:var(--acc);color:#fff}

/* Shop + product */
.ap-shop-head__title,.ap-single .product_title{font:400 clamp(30px,5vw,72px)/1.05 var(--display);letter-spacing:-.01em;overflow-wrap:anywhere}
.ap-single .product_title{font-size:clamp(24px,3vw,42px)}
.ap-toolbar{background:rgba(5,7,12,.85);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:var(--line)}
.woocommerce-product-gallery__image,.woocommerce-product-gallery .flex-viewport{border-radius:28px;border:1px solid var(--line);background:var(--surf)}
.ap-single section.related>h2,.ap-single section.upsells>h2,.cross-sells>h2{font:400 clamp(22px,2.6vw,36px)/1.1 var(--display)}
.ap-foryou{background:linear-gradient(180deg,transparent,rgba(47,123,255,.06) 40%,transparent)}
.ap-sticky{border-top:1px solid var(--line)}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:14px;border:1px solid var(--line2)}

/* Sections */
.tw-sec{position:relative;max-width:1440px;margin:0 auto;padding:clamp(72px,9vw,120px) var(--px)}
.tw-sec__head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:36px}

/* Hero */
.tw-hero{position:relative;min-height:calc(100svh - var(--hh) - 36px - var(--ab));display:flex;align-items:center;overflow:hidden}
.tw-hero__canvas{position:absolute;inset:0;width:100%;height:100%;display:block;-webkit-mask-image:radial-gradient(ellipse 90% 80% at 60% 50%,#000 40%,transparent 100%);mask-image:radial-gradient(ellipse 90% 80% at 60% 50%,#000 40%,transparent 100%)}
.tw-hero__inner{position:relative;z-index:2;width:100%;max-width:1440px;margin:0 auto;padding:clamp(40px,6vw,64px) var(--px) 96px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,480px),1fr));gap:48px;align-items:center;will-change:transform,opacity}
.tw-hero__text{display:flex;flex-direction:column;gap:28px;min-width:0}
.tw-hero__text .tw-eyebrow{margin:0}
.tw-hero__title{margin:0;font:400 clamp(40px,7.4vw,118px)/.98 var(--display);letter-spacing:-.02em;display:flex;flex-direction:column;color:#fff}
.tw-line{display:block;overflow:hidden;padding-bottom:.22em;margin-bottom:-.16em}
.tw-line__in{display:block;padding-bottom:.06em}
.tw-grad{padding-bottom:.18em;margin-bottom:-.18em}
.ap-js .tw-line__in{transform:translateY(105%)}
.ap-js.tw-go .tw-line__in{animation:twLine 1.3s var(--ease) forwards;animation-delay:var(--d,0ms)}
.tw-hero__lead{margin:0;max-width:440px;font:400 18px/1.6 var(--sans);color:var(--mute);text-wrap:pretty}
.tw-stage{position:relative;height:clamp(400px,74svh,640px);min-width:0}
.tw-stage__tilt{position:absolute;inset:0;display:grid;place-items:center;transition:transform .8s var(--ease)}
.tw-stage__glow{position:absolute;width:76%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(47,123,255,.5),rgba(47,123,255,0) 65%);filter:blur(10px);animation:twPulse 6s ease-in-out infinite}
.tw-stage__ring{position:absolute;aspect-ratio:1;transform:rotateX(74deg)}
.tw-stage__ring::before{content:"";position:absolute;inset:0;border-radius:50%;border:1px solid rgba(130,180,255,.3)}
.tw-stage__ring i{position:absolute;inset:0;border-radius:50%;animation:twSpin 30s linear infinite}
.tw-stage__ring i::after{content:"";position:absolute;top:-5px;left:50%;width:10px;height:10px;border-radius:50%;background:#BFDBFF;box-shadow:0 0 18px 6px rgba(79,163,255,.9)}
.tw-stage__ring--1{width:104%}
.tw-stage__ring--2{width:84%;transform:rotateX(70deg) rotateZ(25deg)}
.tw-stage__ring--2 i{animation-duration:20s;animation-direction:reverse}
.tw-stage__ring--3{width:124%;transform:rotateX(78deg) rotateZ(50deg)}
.tw-stage__ring--3 i{animation-duration:46s}
.tw-stage__frame{position:relative;width:min(330px,60%);aspect-ratio:3/4;border-radius:30px;overflow:hidden;border:1px solid rgba(255,255,255,.16);background:var(--surf);box-shadow:0 70px 140px -40px rgba(47,123,255,.75);animation:twFloat 7s ease-in-out infinite}
.tw-stage__img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;opacity:0;transform:scale(1.14);filter:blur(10px);transition:opacity 1.4s ease,transform 2.6s var(--ease),filter 1.4s}
.tw-stage__img.is-on{opacity:1;transform:none;filter:none}
.tw-stage__scan{position:absolute;left:0;right:0;height:32%;background:linear-gradient(180deg,transparent,rgba(79,163,255,.22) 85%,rgba(190,220,255,.95));mix-blend-mode:screen;animation:twScan 4.8s cubic-bezier(.6,0,.4,1) infinite;pointer-events:none}
.tw-stage__sheen{position:absolute;inset:0;background:linear-gradient(140deg,rgba(255,255,255,.18),transparent 35%);pointer-events:none}
.tw-stage__hud{position:absolute;left:0;bottom:24px;z-index:3;display:flex;flex-direction:column;gap:6px;max-width:min(300px,62%);padding:14px 16px;border-radius:16px;background:rgba(8,11,18,.6);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--ink)}
.tw-stage__hud:hover{color:var(--ink);border-color:rgba(79,163,255,.5)}
.tw-stage__hud b{color:var(--ink);font-weight:500}
.tw-stage__name{font:600 15px/1.3 var(--sans)}
.tw-stage__meta{font:400 13px/1.4 var(--sans);color:#9CC2FF}
.tw-stage__bars{position:absolute;right:0;bottom:30px;width:min(180px,30%);display:flex;gap:6px}
.tw-stage__bars i{flex:1;height:2px;border-radius:2px;background:rgba(255,255,255,.14);overflow:hidden}
.tw-stage__bars i b{display:block;height:100%;background:#6FB0FF;transform:scaleX(0);transform-origin:left}
.tw-stage__bars i.is-done b{transform:none}
.tw-stage__bars i.is-on b{animation:twBar var(--tw-cycle,4.8s) linear both}
.tw-scroll{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;font:500 10px/1 var(--mono);letter-spacing:.3em;text-transform:uppercase;color:#5E6778;z-index:2}
.tw-scroll span{width:1px;height:34px;background:linear-gradient(#5E6778,transparent)}
@media (max-width:767px){.tw-stage__bars,.tw-scroll{display:none}.tw-stage__hud{left:50%;transform:translateX(-50%);bottom:8px;max-width:88%;text-align:center;align-items:center}}

/* Finder */
.tw-finder__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:56px;align-items:center}
.tw-finder__text{display:flex;flex-direction:column;gap:26px;min-width:0}
.tw-finder__text .tw-eyebrow{margin:0}
.tw-series{display:flex;flex-wrap:wrap;gap:8px}
.tw-series__btn{width:60px;height:60px;border-radius:18px;border:1px solid var(--line2);background:rgba(255,255,255,.02);color:#C9D1DE;font:400 18px/1 var(--display);transition:all .35s var(--ease)}
.tw-series__btn:hover{border-color:var(--accent);color:#fff}
.tw-series__btn.is-on{background:var(--acc);border-color:var(--acc);color:#fff;box-shadow:0 12px 30px -10px rgba(47,123,255,1)}
.tw-models{display:flex;flex-wrap:wrap;gap:8px}
.tw-models .tw-chip{height:44px;padding:0 18px;display:inline-flex;align-items:center;border-radius:var(--pill);border:1px solid var(--line2);color:#C9D1DE;font:500 14px var(--sans);transition:all .3s}
.tw-models .tw-chip:hover{border-color:var(--accent);color:#fff}
.tw-models .tw-chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.tw-finder__panel{position:relative;aspect-ratio:1;max-height:560px;width:100%;border-radius:32px;border:1px solid var(--line);background:radial-gradient(circle at 50% 55%,rgba(47,123,255,.22),rgba(5,7,12,0) 60%),#070A11;overflow:hidden;display:grid;place-items:center}
.tw-finder__ring{position:absolute;width:78%;aspect-ratio:1;border-radius:50%;border:1px dashed rgba(120,170,255,.22);animation:twSpin 60s linear infinite}
.tw-finder__ring--b{width:56%;border-style:solid;border-color:rgba(120,170,255,.14);animation:none}
.tw-finder__tl{position:absolute;top:28px;left:28px}
.tw-finder__bl{position:absolute;bottom:28px;left:28px;right:28px;display:flex;justify-content:space-between;gap:12px}
.tw-finder__num{position:relative;display:flex;flex-direction:column;align-items:center}
.tw-finder__num .tw-mono{letter-spacing:.4em;color:#9CC2FF;font-size:13px}
.tw-finder__num b{font:400 clamp(110px,17vw,250px)/1 var(--display);color:transparent;-webkit-text-stroke:1.5px rgba(200,222,255,.85);text-shadow:0 0 60px rgba(47,123,255,.6)}
.tw-finder__num em{font:400 18px var(--display);font-style:normal;color:#fff}
.tw-finder__num.is-anim{animation:twNum .9s var(--ease) both}

/* Rail */
.tw-rail ul.products,ul.products.ap-rail,.ap-browse__rail,.ap-viewed__row,.ap-mini__upsell-row{overflow-y:hidden!important;overscroll-behavior-y:auto!important;overscroll-behavior-x:contain}
.tw-rail__nav{display:flex;gap:8px;align-items:center}
.tw-rail{margin:0 calc(var(--px) * -1)}
.tw-rail ul.products{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:min(300px,72vw);gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:16px var(--px) 36px;scroll-padding:0 var(--px);margin:0}
.tw-rail ul.products::-webkit-scrollbar{display:none}
.tw-rail ul.products>li{scroll-snap-align:start;width:auto!important;margin:0!important}

/* iPhone generations */
.tw-gens-head{padding-bottom:8px;display:flex;flex-direction:column;gap:16px}
.tw-gens-head .tw-eyebrow{margin:0}
.tw-gen{padding-top:clamp(48px,6vw,80px);padding-bottom:clamp(24px,3vw,40px)}
.tw-gen__head{border-top:1px solid var(--line);padding-top:clamp(32px,4vw,48px);display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px clamp(24px,4vw,56px);margin-bottom:28px}
.tw-gen__num{font:400 clamp(96px,14vw,220px)/.8 var(--display);letter-spacing:-.04em;color:transparent;-webkit-text-stroke:1.5px rgba(156,194,255,.55);background:linear-gradient(180deg,rgba(111,176,255,.35),transparent 85%);-webkit-background-clip:text;background-clip:text;filter:drop-shadow(0 0 40px rgba(47,123,255,.35))}
.tw-gen__meta{flex:1 1 420px;min-width:0;display:flex;flex-direction:column;gap:14px}
.tw-gen__meta .tw-eyebrow{margin:0}
.tw-gen__title{font-size:clamp(26px,3.2vw,46px)}
.tw-gen__bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.tw-gen__chips{display:flex;gap:8px;flex-wrap:wrap}
.tw-gen__chip{height:40px;padding:0 16px;border-radius:var(--pill);border:1px solid var(--line2);background:transparent;color:#C9D1DE;font:500 13.5px var(--sans);cursor:pointer;transition:all .3s}
.tw-gen__chip:hover{border-color:var(--accent);color:#fff}
.tw-gen__chip.is-on{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.tw-gen__empty{margin:0;padding:32px 0;color:var(--mute)}
.tw-gen .tw-rail ul.products>li[hidden]{display:none!important}
@media (max-width:599px){.tw-gen .tw-rail__nav .tw-round{display:none}.tw-gen .tw-rail ul.products{grid-auto-columns:64vw;gap:12px}}

/* Band */
.tw-band{position:relative;padding:clamp(36px,5vw,60px) 0;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px}
.tw-band__row{white-space:nowrap;font:400 clamp(48px,10vw,170px)/1.1 var(--display);color:transparent;-webkit-text-stroke:1px rgba(156,194,255,.4);will-change:transform}
.tw-band__row--fill{background:linear-gradient(90deg,var(--acc),var(--ink) 50%,var(--acc));-webkit-background-clip:text;background-clip:text;-webkit-text-stroke:0}

/* Sale */
.tw-sale__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:56px;align-items:start}
.tw-sale__text{display:flex;flex-direction:column;gap:24px;min-width:0}
.tw-sale__text .tw-eyebrow{margin:0}
@media (min-width:900px){.tw-sale__text{position:sticky;top:calc(var(--hh) + var(--ab) + 40px)}}
.tw-sale__big{font:400 clamp(64px,12vw,200px)/.9 var(--display);letter-spacing:-.04em;background:linear-gradient(170deg,#fff 20%,#6FB0FF 60%,#1E4FCC);-webkit-background-clip:text;background-clip:text;color:transparent}
.tw-sale__products ul.products{grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr))!important}
@media (max-width:599px){.tw-sale__products ul.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 12px}}

/* Shop by category — bento */
.tw-cats__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:clamp(200px,20vw,290px);grid-auto-flow:dense;gap:16px}
.tw-cat--1{grid-column:span 2;grid-row:span 2}
.tw-cat--2{grid-column:span 2}
.tw-cats__grid--5 .tw-cat--5{grid-column:1/-1}
.tw-cats__grid--6 .tw-cat--5,.tw-cats__grid--6 .tw-cat--6,.tw-cats__grid--7 .tw-cat--7{grid-column:span 2}
.tw-cats__grid--3 .tw-cat--3{grid-column:span 2}
.tw-cat{position:relative;display:block;border-radius:24px;overflow:hidden;border:1px solid var(--line);background:radial-gradient(circle at 70% 30%,rgba(47,123,255,.22),transparent 60%),var(--surf);color:#fff;isolation:isolate;transition:transform .5s var(--ease),border-color .4s,box-shadow .5s}
.tw-cat:hover{color:#fff;transform:translateY(-6px);border-color:rgba(79,163,255,.6);box-shadow:0 30px 80px -30px rgba(47,123,255,.7)}
.tw-cat img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;transition:transform 1.2s var(--ease),filter .6s}
.tw-cat:hover img{transform:scale(1.06)}
.tw-cat::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(5,7,12,.35),transparent 35%,transparent 45%,rgba(5,7,12,.92));pointer-events:none}
.tw-cat::after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:40%;z-index:1;background:linear-gradient(100deg,transparent,rgba(190,220,255,.18),transparent);transform:skewX(-18deg);transition:left 1s var(--ease);pointer-events:none}
.tw-cat:hover::after{left:130%}
.tw-cat__mark{position:absolute;right:-.06em;bottom:-.2em;font:400 clamp(140px,18vw,300px)/1 var(--display);color:transparent;-webkit-text-stroke:1px rgba(156,194,255,.28);z-index:-1;transition:transform 1s var(--ease)}
.tw-cat:hover .tw-cat__mark{transform:translate(-10px,-10px)}
.tw-cat__top{position:absolute;top:18px;left:20px;right:20px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:10px}
.tw-cat__top .tw-mono{color:#6FB0FF}
.tw-cat__count{font:500 10.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:7px 10px;border-radius:var(--pill);background:rgba(5,7,12,.55);border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap}
.tw-cat__info{position:absolute;left:20px;right:20px;bottom:20px;z-index:2;display:flex;justify-content:space-between;align-items:flex-end;gap:12px}
.tw-cat__info strong{font:400 clamp(14px,1.4vw,18px)/1.25 var(--display);overflow-wrap:anywhere}
.tw-cat--1 .tw-cat__info strong{font-size:clamp(22px,2.6vw,38px)}
.tw-cat__arrow{width:44px;height:44px;flex:none;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:grid;place-items:center;transform:rotate(-45deg);transition:background .3s,border-color .3s,transform .5s var(--ease)}
.tw-cat:hover .tw-cat__arrow{background:var(--acc);border-color:var(--acc);transform:rotate(0)}
@media (max-width:899px){.tw-cats__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:clamp(170px,44vw,240px);gap:12px}.tw-cat[class*="tw-cat--"]{grid-column:auto;grid-row:auto}.tw-cat--1{grid-column:1/-1!important;grid-row:span 2!important}.tw-cat--2{grid-column:1/-1!important}.tw-cat__info{left:14px;right:14px;bottom:14px}.tw-cat__top{top:14px;left:14px;right:14px}.tw-cat__arrow{width:36px;height:36px}.tw-cat:not(.tw-cat--1):not(.tw-cat--2) .tw-cat__count{display:none}}

/* Social */
.tw-social{position:relative;padding:clamp(80px,10vw,120px) var(--px);text-align:center;display:flex;flex-direction:column;align-items:center;gap:28px;overflow:hidden}
.tw-social::before{content:"";position:absolute;left:50%;top:50%;width:900px;height:900px;margin:-450px 0 0 -450px;border-radius:50%;background:radial-gradient(circle,rgba(47,123,255,.18),transparent 60%);pointer-events:none}
.tw-social>*{position:relative}
.tw-social .tw-eyebrow{margin:0}
.tw-social__handle{font:400 clamp(30px,8vw,128px)/1 var(--display);letter-spacing:-.02em;color:#fff;max-width:100%;overflow-wrap:anywhere}
.tw-socials{display:flex;gap:10px;flex-wrap:wrap}
.tw-socials__btn{width:48px;height:48px;border-radius:50%;border:1px solid var(--line2);display:inline-flex;align-items:center;justify-content:center;color:var(--ink);background:rgba(255,255,255,.02);transition:transform .35s var(--ease),border-color .3s,background .3s,box-shadow .35s,color .3s}
.tw-socials__btn:hover{color:#fff;border-color:var(--acc);background:var(--acc);transform:translateY(-3px);box-shadow:0 14px 34px -10px rgba(47,123,255,1)}
.tw-socials--lg{justify-content:center;gap:14px}
.tw-socials--lg .tw-socials__btn{width:64px;height:64px}
.tw-socials--lg svg{width:24px;height:24px}

/* Trust */
.tw-trust-sec{padding-top:clamp(24px,3vw,40px);padding-bottom:clamp(24px,3vw,40px)}
.tw-trust{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tw-trust__item{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:20px;border:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));color:var(--ink);transition:border-color .35s,background .35s,transform .45s var(--ease)}
a.tw-trust__item:hover{color:var(--ink);border-color:rgba(79,163,255,.5);background:rgba(47,123,255,.07);transform:translateY(-3px)}
.tw-trust__ico{width:46px;height:46px;flex:none;border-radius:14px;display:grid;place-items:center;color:#9CC2FF;background:rgba(47,123,255,.12);box-shadow:inset 0 0 0 1px rgba(79,163,255,.3),0 0 24px -6px rgba(47,123,255,.6)}
.tw-trust__txt{display:flex;flex-direction:column;gap:3px;min-width:0}
.tw-trust__txt strong{font:600 15px/1.25 var(--sans);color:#fff}
.tw-trust__txt small{font:400 13px/1.4 var(--sans);color:var(--mute)}
@media (max-width:1023px){.tw-trust{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.tw-trust{gap:8px}.tw-trust__item{flex-direction:column;align-items:flex-start;gap:10px;padding:14px}.tw-trust__ico{width:40px;height:40px;border-radius:12px}.tw-trust__txt strong{font-size:14px}.tw-trust__txt small{font-size:12px}}
.tw-trust--single{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0 4px}
.tw-trust--single .tw-trust__item{padding:12px 14px;gap:12px;flex-direction:row;align-items:center;border-radius:16px}
.tw-trust--single .tw-trust__ico{width:36px;height:36px;border-radius:10px}
.tw-trust--single .tw-trust__ico svg{width:18px;height:18px}
.tw-trust--single .tw-trust__txt strong{font-size:13.5px}
.tw-trust--single .tw-trust__txt small{display:none}
.tw-footer__trust{max-width:1440px;width:100%;margin:0 auto clamp(48px,6vw,72px)}

/* iPhone Cases menu */
.ap-nav__list{position:relative}
.ap-nav .tw-ip-item{position:static}
.ap-nav .tw-ip-sub{left:50%;top:calc(100% - 6px);transform:translate(-50%,10px);display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:22px 28px;width:min(1040px,92vw);padding:28px 30px;border-radius:22px;background:rgba(9,12,20,.97);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px)}
.ap-nav li.tw-ip-item:hover>.tw-ip-sub,.ap-nav li.tw-ip-item:focus-within>.tw-ip-sub{transform:translate(-50%,0)}
.ap-nav .tw-ip-sub .sub-menu{position:static;opacity:1;visibility:visible;transform:none;min-width:0;padding:6px 0 0;margin:0;border:0;background:none;box-shadow:none;border-radius:0}
.ap-nav .tw-ip-sub a.tw-ip-series{font:400 17px/1.2 var(--display);color:#fff;padding:0 0 4px}
.ap-nav .tw-ip-sub .sub-menu a{padding:6px 0;font:400 14px/1.3 var(--sans);color:#C9D1DE;white-space:normal}
.ap-nav .tw-ip-sub .sub-menu a:hover,.ap-nav .tw-ip-sub a.tw-ip-series:hover{color:var(--accent)}
.ap-nav .tw-ip-all{grid-column:1/-1;border-top:1px solid var(--line);padding-top:16px}
.ap-nav .tw-ip-all a{font:500 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;color:#9CC2FF}
.ap-mnav .tw-ip-all a{color:#9CC2FF}
.ap-mnav .tw-ip-series{font:400 16px/1.3 var(--display)!important;color:#fff!important}

/* Footer */
.tw-footer{position:relative;overflow:hidden;background:#04050A;color:var(--ink);border-top:1px solid var(--line);padding:clamp(56px,7vw,96px) var(--px) 0;display:flex;flex-direction:column;gap:0}
.tw-footer::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(79,140,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(79,140,255,.06) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);pointer-events:none}
.tw-footer::after{content:"";position:absolute;left:50%;bottom:-320px;width:1100px;height:620px;margin-left:-550px;border-radius:50%;background:radial-gradient(closest-side,rgba(47,123,255,.22),transparent);pointer-events:none}
.tw-footer>*{position:relative;z-index:1}
.tw-footer__top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,2fr);gap:48px clamp(32px,6vw,96px);max-width:1440px;width:100%;margin:0 auto}
@media (max-width:899px){.tw-footer__top{grid-template-columns:minmax(0,1fr)}}
.tw-footer__brand{display:flex;flex-direction:column;gap:20px;max-width:380px}
.tw-footer__logo img{display:block;width:min(240px,70vw);height:auto}
.tw-footer__brand p{margin:0;font:400 15px/1.6 var(--sans);color:var(--mute)}
.tw-footer__cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:36px 24px}
@media (max-width:599px){.tw-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tw-footer .ap-label{font:500 11px/1.4 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:#5E6778;margin-bottom:16px}
.tw-footer .ap-footer__list{display:flex;flex-direction:column;gap:12px;list-style:none;margin:0;padding:0}
.tw-footer .ap-footer__list a,.tw-footer .ap-footer__col>a{position:relative;color:#C9D1DE;font:400 15px/1.3 var(--sans);transition:color .3s,padding .4s var(--ease)}
.tw-footer .ap-footer__list a:hover{color:#fff;padding-left:14px}
.tw-footer .ap-footer__list a::before{content:"";position:absolute;left:0;top:50%;width:6px;height:6px;margin-top:-3px;border-radius:50%;background:var(--acc);box-shadow:0 0 10px var(--acc);opacity:0;transform:scale(0);transition:opacity .3s,transform .4s var(--ease)}
.tw-footer .ap-footer__list a:hover::before{opacity:1;transform:none}
.tw-footer__bottom{max-width:1440px;width:100%;margin:0 auto;display:flex;justify-content:space-between;align-items:center;gap:12px 24px;flex-wrap:wrap;padding:22px 0 calc(26px + env(safe-area-inset-bottom));border-top:1px solid var(--line);font:400 13px/1.5 var(--sans);color:#6E7789}
.tw-footer__bottom a{color:#9CC2FF;border:0}
.tw-footer__ship{display:inline-flex;align-items:center;gap:10px;color:#9CC2FF}
.tw-footer__ship .tw-dot{width:6px;height:6px}
body.ap-has-tabbar .tw-footer__bottom{padding-bottom:calc(26px + var(--tb,62px))}
@media (min-width:1120px){body.ap-has-tabbar .tw-footer__bottom{padding-bottom:26px}}

/* Intro */
.ap-intro{background:#03050A}
.ap-intro img{width:min(76vw,560px)!important;height:auto}

/* Cursor glow (desktop) */
.tw-glow{position:fixed;left:0;top:0;width:640px;height:640px;margin:-320px 0 0 -320px;border-radius:50%;background:radial-gradient(circle,rgba(47,123,255,.12),rgba(47,123,255,0) 60%);pointer-events:none;z-index:0;transition:transform .5s var(--ease)}
@media (hover:none){.tw-glow{display:none}}

@media (max-width:860px),(hover:none){
	.tw-hero__inner{will-change:auto}
	.tw-stage__img{filter:none;transform:none;transition:opacity 1s ease}
	.tw-stage__frame{animation:none;box-shadow:0 40px 80px -30px rgba(47,123,255,.6)}
	.tw-stage__glow{animation:none;filter:none}
	.tw-stage__ring--3,.tw-stage__scan{display:none}
	.tw-stage__hud,.tw-cat__count,.ap-wish{-webkit-backdrop-filter:none;backdrop-filter:none;background:rgba(8,11,18,.88)}
	.tw-band__row{will-change:auto;animation:twMarq 40s linear infinite}
	.tw-band__row[data-scrollx="-1"]{animation-direction:reverse}
	.tw-finder__ring{animation:none}
	.ap-card__media{will-change:auto;transition:border-color .3s}
	.tw-gen__num{filter:none}
}
@keyframes twMarq{from{transform:translate3d(0,0,0)}to{transform:translate3d(-33.33%,0,0)}}
@media (prefers-reduced-motion:reduce){
	.tw-band__row{animation:none!important}
	.tw-stage__glow,.tw-stage__ring i,.tw-stage__frame,.tw-stage__scan,.tw-finder__ring,.tw-dot{animation:none!important}
	.ap-js .tw-line__in{animation:none;transform:none}
}
