/* Shared phone and tablet layout, loaded after each page's original styles. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
main>*,header>*,footer>*{min-width:0}
img{max-width:100%}
.product-showcase{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;align-content:start;align-items:stretch;width:100%;max-width:500px;height:auto;aspect-ratio:auto;min-height:0;max-height:none;margin:0 auto}
.showcase-top{position:relative;inset:auto;padding:18px 20px 0;gap:8px;flex-wrap:wrap}
.showcase-products{display:block;position:relative;min-width:0;width:100%;aspect-ratio:1.35;overflow:hidden}
.showcase-products .hero-product{height:44%;object-fit:contain}
.showcase-products .hero-lucario,.showcase-products .hero-charizard{top:5%}
.showcase-products .hero-bundle{top:7%}
.showcase-products .hero-prismatic,.showcase-products .hero-rivals,.showcase-products .hero-skies{top:45%}
.showcase-products .showcase-halo{width:80%;height:auto;aspect-ratio:1;top:50%}
.showcase-products .showcase-watermark{width:70%;height:85%;right:-10%;top:3%}
.showcase-products .product-floor{top:74%;height:25px}
.showcase-caption{position:relative;inset:auto;min-width:0;padding:10px 22px 24px}
.showcase-title{line-height:1.2;overflow-wrap:anywhere}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:#8aab4f30}
@media(max-width:1100px) and (min-width:901px){
  .contact #quote .phone-location-row{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:1000px) and (min-width:901px){
  header{padding-left:4%;padding-right:4%;gap:20px}
  header>nav{gap:17px;font-size:12px}
  header .brand small{margin-left:7px}
}
@media(max-width:900px){
  header{padding:17px 5%;gap:14px}
  .hero{grid-template-columns:minmax(0,1fr);gap:30px;padding:36px 5% 42px}
  .hero>div:first-child{max-width:620px}
  .hero h1{font-size:clamp(46px,8vw,64px);letter-spacing:-2px;margin:24px 0}
  .hero .intro{max-width:580px;font-size:16px;line-height:1.7}
  .hero .actions{flex-wrap:wrap;margin:24px 0;gap:10px}
  .hero .actions .btn{min-height:48px;padding:13px 18px;font-size:14px;gap:18px}
  .hero .micro{font-size:12px;line-height:1.6}
  .product-showcase{max-width:560px}
  .route{padding:22px 5%;flex-wrap:wrap;justify-content:flex-start;gap:16px 22px;font-size:14px}
  .route>span:first-child{width:100%;font-size:11px}
  .section{padding:46px 5%}
  .sectionhead{display:block;margin-bottom:25px}
  .sectionhead p{max-width:580px;font-size:15px;line-height:1.7}
  .home-collection .sectionhead h2,.home-approach .trustinner h2,.home-about h2{font-size:clamp(30px,5.6vw,40px);line-height:1.14;letter-spacing:-1.2px}
  .collection-preview-actions{flex-wrap:wrap;justify-content:flex-start;gap:12px}
  .collection-preview-actions .btn,.popular-shortcut,.home-approach .btn,.home-about .btn{min-height:46px;font-size:14px}
  .home-approach .trustinner{grid-template-columns:minmax(0,1fr);padding:46px 5%;gap:30px}
  .home-approach .trustinner p{max-width:620px;font-size:15px;line-height:1.7}
  .home-approach .principle{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:18px 0}
  .home-approach .principle h3{font-size:20px;line-height:1.3}
  .home-approach .principle p{font-size:14px}
  .home-about{grid-template-columns:minmax(0,1fr);gap:25px}
  .home-about p{max-width:620px;font-size:15px;line-height:1.7}
  .about-preview-card{padding:25px}
  .about-preview-card p{font-size:14px}
  .about-preview-card .eyebrow{font-size:10px}
  .contact{grid-template-columns:minmax(0,1fr)}
  .contactdetails p{font-size:15px;line-height:1.7}
  .contactdetails p a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
  .contactdetails small{font-size:12px}
  .info-hero{grid-template-columns:minmax(0,1fr);gap:25px;padding:15px 0 30px;margin-bottom:28px}
  .info-hero h1{font-size:clamp(36px,6vw,54px);letter-spacing:-1.5px;line-height:1.08;margin:21px 0}
  .info-hero p{font-size:16px;line-height:1.7;max-width:680px}
  .info-motif{min-height:200px}
  .info-grid{grid-template-columns:minmax(0,1fr);gap:15px}
  .info-card{padding:23px}
  .info-card p,.info-card address,.about-story p{font-size:15px;line-height:1.75}
  .info-card small{font-size:11px;line-height:1.5}
  .info-cta{flex-direction:column;align-items:flex-start;gap:20px;padding:25px}
  .info-cta h2{font-size:28px;line-height:1.2}
  .info-cta p,.info-cta .btn{font-size:15px}
  .info-cta .btn{min-height:48px}
  .page-subsection>h2{font-size:29px;line-height:1.2}
  .about-story{grid-template-columns:minmax(0,1fr);gap:20px}
  .about-contacts{grid-template-columns:minmax(0,1fr);gap:16px}
  .about-contact-card{padding:23px;min-width:0}
  .about-contact-card .eyebrow{font-size:11px;line-height:1.5}
  .about-contact-card p,.about-contact-card address{font-size:15px;line-height:1.75}
  .about-contact-card h3{font-size:25px;line-height:1.3}
  .about-contact-card a{overflow-wrap:anywhere}
  .about-contact-card p>a{display:inline-flex;align-items:center;min-height:44px}
  .about-contact-card .contact-socials{gap:5px 15px}
  .contact-socials a{display:inline-flex;align-items:center;min-height:44px}
  .about-business-email{font-size:20px;line-height:1.6;margin:23px 0;text-align:center;overflow-wrap:anywhere}
  .about-business-email a{display:inline-block;padding:8px 0}
  .process-stage{grid-template-columns:36px minmax(0,1fr);padding:22px;gap:15px}
  .process-step-number{width:36px;height:36px;font-size:14px}
  .process-stage h3{font-size:22px;line-height:1.25}
  .process-stage p{font-size:15px;line-height:1.7}
  .process-stage small{font-size:10px;line-height:1.5;letter-spacing:1px}
  .order-note{font-size:13px;line-height:1.7}
  footer{padding:28px 5%;flex-direction:column;gap:20px}
  footer p{font-size:12px;line-height:1.65}
  .footnav{width:100%;margin-left:0;justify-content:flex-start;gap:2px 20px;font-size:14px}
  .footnav a{display:inline-flex;align-items:center;min-height:44px}
  .backlink{display:inline-flex;align-items:center;min-height:44px;font-size:14px}
}
@media(max-width:600px){
  .hero{padding-top:29px;gap:26px}
  .hero h1{font-size:clamp(44px,12.5vw,54px);margin:21px 0}
  .hero .eyebrow{font-size:10px;letter-spacing:1.4px;line-height:1.6}
  .hero .actions .btn{font-size:14px}
  .product-showcase{max-width:430px}
  .showcase-top{padding:16px 16px 0}
  .showcase-caption{padding:10px 20px 20px}
  .showcase-title{font-size:clamp(25px,7vw,32px)}
  .showcase-caption-foot{font-size:7px;letter-spacing:1px;margin-top:10px}
  .preview-series{grid-template-columns:minmax(0,1fr);gap:12px}
  .series-preview{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:stretch}
  .preview-logo{height:auto;min-height:96px;padding:15px}
  .preview-copy{padding:17px 15px;align-self:center;min-width:0}
  .preview-copy small{font-size:10px;letter-spacing:1px}
  .preview-copy h3{font-size:20px;line-height:1.2;margin-top:7px}
  .collection-preview-actions .btn,.popular-shortcut{width:100%;justify-content:center}
  .about-preview-card strong{font-size:25px}
  .about-preview-card strong span{font-size:21px;white-space:nowrap}
  .info-card,.about-contact-card,.info-cta{padding:20px}
  .info-cta .btn{width:100%}
  .info-motif{min-height:180px}
  .process-stage{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:18px 15px}
  .process-step-number{width:32px;height:32px;font-size:13px}
  .process-stage h3{font-size:20px}
  .process-stage p{font-size:15px}
  .footnav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px}
}
@media(max-width:360px){
  header{padding-top:14px;padding-bottom:14px;gap:10px}
  header .brand{font-size:22px}
  header .brand-mark{width:30px;height:30px;margin-right:6px}
  header .brand small{font-size:17px;margin-left:36px}
  .mobile-navigation>summary{padding:10px 11px;gap:7px}
  .hero .actions .btn{width:100%}
  .preview-copy{padding:15px 12px}
  .series-preview{grid-template-columns:80px minmax(0,1fr)}
  .preview-copy h3{font-size:18px}
  .about-preview-card{padding:22px}
}
