/* ==========================================================================
   Hog Wild Toys — main stylesheet
   Plain CSS, no framework. Sections:
   1. Fonts  2. Tokens  3. Base  4. Header  5. Mobile menu  6. Search
   7. Footer  8. Shared components  9. Home  10. Product pages
   11. Our Brands  12. About  13. Media & Videos  14. Contact
   15. Coming Soon  16. Legal pages  17. Search results / 404  18. Utilities
   Breakpoints: mobile <= 767px, tablet 768–1024px, laptop <= 1366px.
   ========================================================================== */

/* 1. Fonts (self-hosted, latin subset) -------------------------------------- */
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/barlow-400.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/barlow-400i.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/barlow-500.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/barlow-600.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/barlow-700.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:italic;font-weight:700;font-display:swap;src:url("/assets/fonts/barlow-700i.woff2") format("woff2");}
@font-face{font-family:"Barlow";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/barlow-800.woff2") format("woff2");}
@font-face{font-family:"Roboto";font-style:normal;font-weight:400 700;font-display:swap;src:url("/assets/fonts/roboto-400.woff2") format("woff2");}
@font-face{font-family:"Roboto";font-style:italic;font-weight:400;font-display:swap;src:url("/assets/fonts/roboto-400i.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins-400.woff2") format("woff2");}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins-700.woff2") format("woff2");}
@font-face{font-family:"Lato";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/lato-400.woff2") format("woff2");}
@font-face{font-family:"Playfair Display";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/playfair-display-400.woff2") format("woff2");}

/* 2. Design tokens ---------------------------------------------------------- */
:root{
  --hw-pink:#EC008D;
  --hw-dark:#1B1C1E;
  --hw-light-bg:#F8F8F8;
  --hw-white:#FFFFFF;
  --hw-black:#000000;
  --hw-divider-blue:#004E99;
  --hw-btn-blue:#438BD3;
  --hw-btn-hover:#AD4F21;
  --hw-dot-active:#0080FF;
  --hw-nav-arrow:#909090CC;
  --hw-overlay:#262626B8;
  --hw-subscribe-hover:#4B5E80;
  --hw-grey:#54595F;
  --hw-error:#FF6058;

  --font-barlow:"Barlow",sans-serif;
  --font-roboto:"Roboto",sans-serif;
  --font-poppins:"Poppins",sans-serif;
  --font-lato:"Lato",sans-serif;
  --font-playfair:"Playfair Display",serif;
  --font-system:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif;

  --header-h:100px;          /* space reserved under the fixed header */
  --content-w:1140px;        /* Elementor kit content width */
  --max-w:1920px;            /* sections never grow beyond this */
}
@media (max-width:767px){ :root{ --header-h:70px; } }

/* 3. Base ------------------------------------------------------------------- */
*,*::before,*::after{box-sizing:border-box;}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h);}
body{margin:0;font-family:var(--font-system);font-size:16px;line-height:1.5;color:#333;background:#fff;}
body.bg-dark{background:var(--hw-dark);}
body.bg-light{background:var(--hw-light-bg);}
body.bg-white{background:#fff;}
img{max-width:100%;height:auto;display:inline-block;vertical-align:middle;border:0;}
a{color:inherit;text-decoration:none;}
p{margin:0 0 .9em;}
p:last-child{margin-bottom:0;}
h1,h2,h3,h4,h5,h6{margin:0;line-height:1;}
button,input,textarea{font:inherit;}
main{display:block;padding-top:var(--header-h);overflow-x:clip;} /* clip: hero logos may hang off the edge, as on the original */
.container{width:100%;max-width:var(--content-w);margin:0 auto;padding:0 10px;}
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
.skip-link{position:absolute;left:-9999px;top:0;z-index:1000;background:var(--hw-dark);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;font-family:var(--font-roboto);}
.skip-link:focus{left:0;}
:focus-visible{outline:3px solid var(--hw-dot-active);outline-offset:2px;}

/* 4. Header ----------------------------------------------------------------- */
.site-header{position:fixed;top:0;left:0;right:0;z-index:100;background:var(--hw-pink);}
.site-header__bar{width:90%;max-width:var(--max-w);margin:0 auto;height:99px;display:flex;align-items:center;}
.site-header__logo{flex:0 0 12.136%;max-width:12.136%;display:flex;align-items:center;}
.site-header__logo img{width:120px;height:auto;}
.main-nav{flex:0 0 65%;max-width:65%;display:flex;justify-content:center;padding:10px;}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:30px;}
.main-nav a{display:block;padding:10px 20px;border-radius:50px;color:#fff;font-family:var(--font-poppins);font-weight:700;font-size:14px;line-height:26px;text-transform:uppercase;white-space:nowrap;transition:background-color .3s;}
.main-nav a:hover{background:#000;border-radius:50px;}
.main-nav a.is-active{background:var(--hw-dark);border-radius:30px;}
.menu-icon{display:flex;align-items:flex-start;}
.menu-icon img{width:25px;height:24px;margin-right:5px;}
.site-header__actions{flex:0 0 20%;max-width:20%;display:flex;align-items:center;justify-content:flex-end;gap:20px;margin-left:auto;}
.site-header__store{display:block;width:116px;}
.site-header__store img{width:116px;height:auto;display:block;}
.menu-toggle{display:none;}
.site-header__mobile-search{display:none;}

/* tablet: smaller menu text, no search/store column (as original) */
@media (max-width:1024px){
  .site-header__bar{height:80px;}
  .site-header__logo img{width:107px;}
  .main-nav{flex-basis:auto;max-width:none;flex:1;}
  .main-nav ul{gap:8px;}
  .main-nav a{font-size:11px;padding:10px 12px;}
  .site-header__actions{display:none;}
}
@media (max-width:767px){
  .site-header__bar{width:100%;height:75px;padding:0 0 0 10px;}
  .site-header__logo{flex:0 0 auto;max-width:none;}
  .site-header__logo img{width:84px;}
  .main-nav{display:none;}
  .site-header__mobile-search{display:block;margin-left:auto;}
  .menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:34px;height:37px;margin:0 11px 0 32px;padding:0;background:none;border:0;color:#fff;cursor:pointer;}
  .menu-toggle svg{width:24px;height:24px;}
}

/* 5. Mobile menu ------------------------------------------------------------ */
.mobile-menu{position:fixed;top:75px;left:0;right:0;bottom:0;z-index:99;background:var(--hw-pink);overflow-y:auto;display:none;}
.mobile-menu.is-open{display:block;}
.mobile-menu ul{list-style:none;margin:0;padding:40px;}
.mobile-menu li + li{margin-top:0;}
.mobile-menu a{display:flex;align-items:flex-start;padding:20px;background:var(--hw-dark);color:#fff;font-family:var(--font-roboto);font-weight:600;font-size:16px;line-height:1.2;text-transform:uppercase;}
.mobile-menu li:first-child a{border-radius:20px 20px 0 0;}
.mobile-menu li.is-last-link a{border-radius:0 0 20px 20px;}
.mobile-menu a.is-active{color:var(--hw-pink);}
.mobile-menu .mobile-menu__store{margin-top:50px;}
.mobile-menu .mobile-menu__store a{background:transparent;padding:20px 0;justify-content:center;}
.mobile-menu .mobile-menu__store img{width:400px;max-width:100%;}
body.menu-open{overflow:hidden;}
@media (min-width:768px){ .mobile-menu{display:none!important;} }

/* 6. Header search ---------------------------------------------------------- */
.header-search{position:relative;display:flex;align-items:center;}
.header-search__toggle{display:flex;align-items:center;justify-content:center;width:45px;height:45px;padding:10px;border:0;border-radius:50px;background:var(--hw-dark);color:#fff;cursor:pointer;}
.header-search__toggle svg{width:25px;height:25px;}
.header-search__form{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%);display:none;}
.header-search.is-open .header-search__form{display:block;}
.header-search__input{width:min(1000px,70vw);height:45px;padding:0 12.5px;border:0;border-radius:20px;background:#fff;color:#000;font-family:var(--font-barlow);font-weight:600;font-size:16px;}
.header-search__input::placeholder{color:#7a7a7a;}
@media (max-width:767px){
  .site-header__mobile-search .header-search__toggle{width:35px;height:37px;padding:0;background:#fff;color:#000;border-radius:50px;}
  .site-header__mobile-search .header-search__toggle svg{width:15px;height:15px;}
  .header-search__input{width:250px;max-width:calc(100vw - 140px);padding:0 7.5px;}
}

/* 7. Footer ----------------------------------------------------------------- */
.site-footer{background:var(--hw-pink);color:#fff;position:relative;}
.site-footer__inner{width:90%;max-width:var(--max-w);margin:0 auto;padding:64px 40px 30px;display:flex;justify-content:space-between;align-items:stretch;gap:20px;min-height:512px;}
.footer-left{flex:0 0 auto;display:flex;flex-direction:column;}
.footer-cols{display:flex;gap:38px;}
.footer-col{min-width:161px;}
.footer-heading{font-family:var(--font-roboto);font-weight:600;font-size:16px;line-height:17px;color:#fff;margin:0;}
.footer-divider{display:block;width:40px;height:6px;background:var(--hw-divider-blue);margin:8px 0 20px;}
.footer-divider--narrow{width:52px;}
.footer-text{font-family:var(--font-roboto);font-size:14px;line-height:21px;color:#fff;margin:0;}
.footer-links{list-style:none;margin:0;padding:0;font-family:var(--font-roboto);font-size:14px;line-height:24px;}
.footer-links a{color:#fff;}
.footer-links a:hover{text-decoration:underline;}
.footer-contact{list-style:none;margin:23px 0 0;padding:0;}
.footer-contact li{display:flex;align-items:center;font-family:var(--font-roboto);font-size:16px;line-height:24px;}
.footer-contact li + li{margin-top:8px;}
.footer-contact svg{width:20px;height:20px;flex:0 0 20px;margin-right:5px;fill:#fff;}
.footer-contact a{color:#fff;}
.btn-contact{display:inline-block;margin-top:40px;padding:12px 24px;border-radius:20px;background:var(--hw-dark);color:#fff;font-family:var(--font-roboto);font-weight:600;font-size:15px;line-height:15px;}
.btn-contact:hover{opacity:.9;}
.footer-social{margin-top:auto;padding-top:40px;}
.social-icons{list-style:none;margin:0;padding:0;display:flex;gap:15px;}
.social-icons a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:30px;background:#000;color:#fff;transition:opacity .3s;}
.social-icons a:hover{opacity:.9;}
.social-icons svg{width:20px;height:20px;fill:currentColor;}
.footer-mascot{flex:0 0 437px;margin-top:-84px;align-self:flex-start;}
.footer-mascot img{width:437px;height:auto;display:block;}
.footer-right{flex:0 0 350px;display:flex;flex-direction:column;}
.footer-right .footer-text{margin-bottom:12px;}
.newsletter{display:flex;flex-direction:column;align-items:flex-start;}
.newsletter__input{width:100%;height:45px;padding:0 15px;border:1px solid #fff;border-radius:30px;background:#FFFFFFFC;color:#474747;font-family:var(--font-lato);font-size:14px;letter-spacing:.2px;}
.newsletter__input::placeholder{color:#B1B1B1;}
.newsletter__btn{width:166px;height:45px;margin-top:15px;border:0;border-radius:40px;background:var(--hw-dark);color:#fff;font-family:var(--font-poppins);font-size:15px;cursor:pointer;transition:background-color .7s;}
.newsletter__btn:hover{background:var(--hw-subscribe-hover);}
.footer-copyright{margin-top:auto;font-family:var(--font-roboto);font-size:12px;line-height:18px;color:#fff;}
@media (max-width:1366px){
  .footer-mascot{flex-basis:340px;}
  .footer-mascot img{width:340px;}
}
@media (max-width:1024px){
  .site-footer__inner{flex-wrap:wrap;padding:60px 30px 30px;}
  .footer-mascot{order:4;flex:0 0 200px;margin-top:0;}
  .footer-mascot img{width:200px;}
  .footer-right{flex:0 0 300px;}
}
@media (max-width:767px){
  .site-footer__inner{width:100%;flex-direction:column;padding:64px 40px 30px;gap:0;}
  .footer-cols{flex-direction:column;gap:40px;}
  .footer-social{margin-top:0;padding-top:50px;}
  .footer-right{flex:none;width:100%;margin-top:50px;padding:0 10px;}
  .newsletter__input{width:100%;font-size:13px;}
  .newsletter__btn{width:137px;font-size:13px;}
  .footer-copyright{margin-top:40px;}
  .footer-mascot{order:5;flex:none;margin:30px 0 0 -10px;}
  .footer-mascot img{width:170px;}
}

/* 8. Shared components ------------------------------------------------------ */
/* "FUN! FUNKY! FUNCTIONAL!" decorative band above the footer */
.funfunky{padding:70px 0;line-height:0;}
.funfunky img{width:100%;max-width:var(--max-w);display:block;margin:0 auto;}

/* Carousel (home rows, "You May Also Like") */
.carousel{position:relative;}
.carousel__viewport{overflow:hidden;}
.carousel__track{display:flex;transition:transform .5s ease;will-change:transform;}
.carousel__slide{flex:0 0 calc(100% / var(--per-view,4));padding:0 10px;}
.carousel__slide a{display:block;}
.carousel__slide img{width:100%;height:auto;display:block;}
.carousel__btn{position:absolute;top:50%;transform:translateY(-50%);z-index:2;display:flex;align-items:center;justify-content:center;width:50px;height:50px;padding:0;border:0;border-radius:50%;background:#000;color:#fff;cursor:pointer;}
.carousel__btn svg{width:50%;height:50%;fill:none;stroke:currentColor;stroke-width:3;}
.carousel__btn--prev{left:-60px;}
.carousel__btn--next{right:-60px;}
@media (max-width:767px){
  .carousel__btn--prev{left:0;}
  .carousel__btn--next{right:0;}
}

/* Video pop-up (lightbox) */
.video-dialog{width:min(960px,92vw);max-width:none;padding:0;border:0;background:transparent;overflow:visible;}
.video-dialog::backdrop{background:rgba(0,0,0,.85);}
.video-dialog__frame{position:relative;width:100%;aspect-ratio:16/9;background:#000;}
.video-dialog__frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.video-dialog__close{position:absolute;top:-44px;right:0;width:40px;height:40px;border:0;border-radius:50%;background:#fff;color:#000;font-size:26px;line-height:40px;cursor:pointer;}

/* Play button overlay used on video thumbnails */
.play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;background:rgba(38,38,38,.7);display:flex;align-items:center;justify-content:center;pointer-events:none;}
.play-badge svg{width:22px;height:22px;fill:#fff;margin-left:4px;}

/* Video strip (continuous auto-scroll, "media wheel") */
.video-strip{overflow:hidden;}
.video-strip__track{display:flex;gap:var(--gap,50px);width:max-content;animation:video-strip var(--duration,30s) linear infinite;}
.video-strip:hover .video-strip__track,.video-strip:focus-within .video-strip__track{animation-play-state:paused;}
.video-strip__item{position:relative;flex:0 0 auto;width:var(--item-w,360px);height:var(--item-h,390px);padding:0;border:0;background:none;cursor:pointer;overflow:hidden;border-radius:var(--item-r,0);}
.video-strip__item img{width:100%;height:100%;object-fit:cover;display:block;}
@keyframes video-strip{from{transform:translateX(0);}to{transform:translateX(calc(-50% - var(--gap,50px) / 2));}}
@media (prefers-reduced-motion:reduce){ .video-strip__track{animation:none;} .video-strip{overflow-x:auto;} }

/* YouTube card (product pages) */
.yt-card{display:block;width:304px;max-width:100%;padding:0;border:0;background:#fff;border-radius:16px;box-shadow:0 2px 10px rgba(0,0,0,.1);overflow:hidden;font-family:var(--font-barlow);text-align:left;cursor:pointer;transition:transform .2s ease;}
.yt-card:hover{transform:scale(1.02);}
.yt-card__thumb{position:relative;aspect-ratio:16/9;background:#000;}
.yt-card__thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.yt-card__body{display:grid;grid-template-columns:40px 1fr auto;column-gap:12px;align-items:center;padding:14px 16px 16px;}
.yt-card__avatar{width:40px;height:40px;border-radius:50%;}
.yt-card__channel{font-weight:600;font-size:17px;color:#222;}
.yt-card__logo{width:52px;height:28px;}
.yt-card__more{grid-column:2 / 4;font-weight:700;font-size:16px;color:#000;margin-top:2px;}

/* 9. Home ------------------------------------------------------------------- */
.hero-slider{position:relative;height:827px;overflow:hidden;background:#000;}
.hero-slider__track{display:flex;height:100%;transition:transform .5s ease;}
.hero-slide{position:relative;flex:0 0 100%;height:100%;display:flex;align-items:center;background-size:cover;background-position:center;}
/* The original slides had their colour overlay switched off, so no ::before overlay here. */
.hero-slide__content{position:relative;z-index:1;width:100%;padding:0 10px 0 100px;text-align:left;}
.hero-slide__title{margin:0 0 0;line-height:0;}
.hero-slide__title img{display:inline-block;margin:auto;}
.hero-slide__sub{margin:0 0 15px;font-family:var(--font-barlow);font-weight:700;font-size:23px;line-height:.9em;color:#fff;}
.hero-slide__desc{margin:0 0 10px;color:#fff;font-size:16px;line-height:24px;}
.hero-slide__desc p{margin:0;}
.btn-watch{display:inline-flex;align-items:center;margin:30px 10px 0;padding:17px 55px;border:0;border-radius:30px;background:linear-gradient(230deg,var(--hw-btn-blue) 0%,var(--hw-divider-blue) 100%);color:#fff;font-family:var(--font-barlow);font-weight:800;font-size:16px;line-height:15px;letter-spacing:2.1px;cursor:pointer;transition:background .7s;}
.btn-watch:hover{background:var(--hw-btn-hover);}
.btn-watch svg{width:15px;height:15px;fill:currentColor;margin-right:10px;}
.hero-slider__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:50px;height:45px;padding:0;border:0;background:none;color:var(--hw-nav-arrow);cursor:pointer;transition:color .6s;}
.hero-slider__arrow:hover{color:var(--hw-dot-active);}
.hero-slider__arrow svg{width:22px;height:45px;fill:none;stroke:currentColor;stroke-width:2;}
.hero-slider__arrow--prev{left:14px;}
.hero-slider__arrow--next{right:14px;}
.hero-slider__dots{position:absolute;left:0;right:0;top:92%;z-index:3;display:flex;justify-content:center;gap:9px;margin:0;padding:0;list-style:none;}
.hero-slider__dots button{display:block;width:30px;height:8px;padding:0;border:0;border-radius:15px;background:#FFFFFF33;cursor:pointer;}
.hero-slider__dots button[aria-current="true"]{background:var(--hw-dot-active);}
@media (max-width:1024px){
  .hero-slide__content{text-align:center;padding:0 10px;}
  .btn-watch{font-size:12px;}
}
@media (max-width:767px){
  .hero-slider{height:650px;}
  .hero-slide__content{padding:0;}
  .hero-slide__title img{width:60%;}
  .hero-slide__sub{font-size:24px;line-height:1.1em;margin-top:0;}
  .hero-slide__desc{line-height:1.5em;}
  .btn-watch{margin:0;padding:12px;}
  .hero-slider__arrow{display:none;}
}
@media (max-width:600px){ .hero-slide__title img{width:60%;} }

.home-rows{padding:136px 0 0;}
.home-row{max-width:1227px;margin:0 auto;padding:0 10px 104px;}
.home-row:last-child{padding-bottom:10px;}
.home-row__heading{display:block;margin:0 10px 20px;font-family:var(--font-roboto);font-weight:600;font-size:28px;line-height:28px;color:#fff;}
.home-row .carousel__btn{background:rgba(0,0,0,.7);}
.home-row .carousel__btn--prev{left:-50px;}
.home-row .carousel__btn--next{right:-50px;}
@media (max-width:1366px){ .home-row{max-width:1100px;} }
@media (min-width:768px) and (max-width:1240px){ .home-row{padding-left:70px;padding-right:70px;} }
@media (max-width:767px){
  .home-rows{padding-top:83px;}
  .home-row{padding:0 0 110px;}
  .home-row__heading{margin:0 10px 20px;}
  .home-row .carousel__btn--prev{left:10px;}
  .home-row .carousel__btn--next{right:10px;}
}

/* 10. Product pages --------------------------------------------------------- */
.p-hero{position:relative;line-height:0;}
.p-hero__bg{width:100%;height:auto;display:block;}
.p-hero__logo{position:absolute;z-index:2;line-height:0;text-align:center;}
.p-hero__logo img{display:inline-block;}
.p-wrap{width:90%;max-width:var(--max-w);margin:0 auto;padding:0 10px;}
.p-intro{padding-top:94px;}
.p-eyebrow{display:block;margin:0 0 24px;font-family:var(--font-roboto);font-weight:500;font-size:16px;line-height:16px;color:#000;}
.p-title{margin:0 0 20px;font-family:var(--font-barlow);font-weight:700;font-size:40px;line-height:40px;color:var(--hw-pink);}
.p-title--upper{text-transform:uppercase;}
.p-row{display:flex;gap:30px;align-items:flex-start;}
.p-row__text{flex:1 1 0;min-width:0;}
.p-row__media{flex:1 1 0;min-width:0;text-align:center;}
.p-row__media img{width:100%;height:auto;}
.p-tagline{margin:0 0 20px;font-family:var(--font-barlow);font-weight:600;font-size:18px;line-height:18px;color:#000;}
.p-tagline--700{font-weight:700;}
.p-tagline--plain{font-weight:400;font-size:16px;line-height:24px;}
.p-text{margin:0 0 20px;font-family:var(--font-barlow);font-size:16px;line-height:24px;color:#000;}
.p-text:last-child{margin-bottom:0;}
.p-section{padding:10px 0;}
.p-section__heading{margin:0 0 20px;font-family:var(--font-roboto);font-weight:600;font-size:28px;line-height:28px;color:#000;}
.p-videos{padding:30px 0 80px;}
.p-videos:has(.yt-card){padding-bottom:20px;}
.p-videos .video-strip{--item-w:300px;--item-h:250px;--gap:30px;--item-r:15px;--duration:35s;}
.p-videos .video-strip__item{background:#fff;}
.p-related{padding:10px 0 20px;}
.p-related .carousel{max-width:1176px;margin:0 auto;padding:0 10px;}
.p-related .carousel__slide{--per-view:5;padding:15px 5px 0;}
.p-related .carousel__btn{width:46px;height:46px;background:#000;}
.p-related .carousel__btn--prev{left:-60px;}
.p-related .carousel__btn--next{right:-60px;}
@media (max-width:1366px){ .p-related .carousel{max-width:1000px;} }
@media (max-width:1024px){ .p-related .carousel{max-width:760px;} }
@media (max-width:767px){
  .p-wrap{width:100%;}
  .p-eyebrow{text-align:center;}
  .p-row{flex-direction:column;align-items:stretch;gap:30px;}
  .p-row__media{padding:0 10px;}
  .p-related .carousel{max-width:270px;}
  .p-related .carousel__btn--prev{left:-60px;}
  .p-related .carousel__btn--next{right:-46px;}
}

/* 11. Our Brands ------------------------------------------------------------ */
.page-heading{margin:0 0 20px;text-align:center;font-family:var(--font-roboto);font-weight:600;font-size:40px;line-height:40px;color:#fff;}
.section-heading{margin:0 0 20px;font-family:var(--font-roboto);font-weight:600;font-size:30px;line-height:30px;color:#fff;}
.brands{padding-top:80px;}
.brands .container{max-width:1296px;}
.brands__group + .brands__group{margin-top:20px;}
.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);}
.brand-card{display:block;margin:10px;border-radius:15px;background:#fff;color:#000;overflow:hidden;}
.brand-card__media{position:relative;height:400px;}
.brand-card__hero{width:100%;height:300px;object-fit:cover;border-radius:15px 15px 0 0;display:block;}
.brand-card__logo{position:absolute;left:0;right:0;top:220px;margin:0 auto;width:100%;height:160px;object-fit:contain;object-position:center top;}
.brand-card__text{padding:0 30px;font-family:var(--font-roboto);font-size:16px;line-height:24px;color:#000;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:60px 0 70px;}
.brand-card__text p{display:inline;margin:0;}
@media (max-width:1024px){ .brand-grid{grid-template-columns:repeat(3,1fr);} }
@media (max-width:767px){
  .brands{padding-top:50px;}
  .brand-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;}
  .brand-card{flex:0 0 200px;width:200px;scroll-snap-align:start;}
  .brand-card__media{height:150px;}
  .brand-card__hero{height:150px;}
  .brand-card__logo{top:95px;height:80px;}
  .brand-card__text{padding:0 15px;margin:60px 0 20px;font-size:14px;line-height:20px;}
}

/* 12. About ----------------------------------------------------------------- */
.about{padding-top:30px;}
.about .container{max-width:1140px;}
.about__row{display:flex;gap:30px;align-items:center;padding:0 10px;}
.about__lead{flex:0 0 357px;}
.about__body{flex:1;min-width:0;color:#fff;}
.about__eyebrow{display:block;margin:0 0 20px;font-family:var(--font-barlow);font-weight:600;font-size:16px;line-height:16px;color:var(--hw-pink);}
.about__title{margin:0;font-family:var(--font-barlow);font-weight:600;font-size:35px;line-height:35px;color:#fff;}
.about__welcome{margin:0 0 20px;font-family:var(--font-barlow);font-weight:600;font-size:20px;line-height:20px;color:#fff;}
.about__text{font-family:var(--font-barlow);font-size:16px;line-height:24px;color:#fff;}
.about__image{padding:50px 0;}
.about__image img{width:100%;display:block;}
@media (max-width:1024px){ .about__lead{flex-basis:311px;} }
@media (max-width:767px){
  .about{padding-top:0;}
  .about__row{flex-direction:column;align-items:flex-start;gap:20px;padding:30px 20px 0;}
  .about__lead{flex:none;}
  .about__image{padding:50px 0;}
}

/* 13. Media & Videos -------------------------------------------------------- */
.media-page{padding:80px 0 0;}
.media-page__inner{width:90%;max-width:1296px;margin:0 auto;padding:0 10px;}
.media-page .page-heading{margin-bottom:20px;}
.media-page .section-heading{font-size:30px;}
.media-page .video-strip{--item-w:360px;--item-h:390px;--gap:50px;--item-r:0;--duration:30s;}
@media (max-width:767px){ .media-page .video-strip{--item-w:280px;--item-h:303px;--gap:30px;} }

/* 14. Contact --------------------------------------------------------------- */
.contact{padding:80px 0 0;}
.contact .container{max-width:1160px;}
.contact__eyebrow{display:block;margin:0 0 20px;text-align:center;font-family:var(--font-roboto);font-weight:600;font-size:16px;line-height:16px;color:#000;}
.contact__title{margin:0 0 20px;text-align:center;font-family:var(--font-roboto);font-weight:600;font-size:40px;line-height:40px;color:var(--hw-pink);}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.contact-card{background:#fff;border-radius:10px;padding:10px 10px 30px;min-height:224px;}
.contact-card h2{margin:0 0 20px;font-family:var(--font-roboto);font-weight:600;font-size:28px;line-height:1.2;color:#000;}
.contact-card p{font-family:var(--font-roboto);font-size:16px;line-height:24px;color:#000;}
.contact-card .social-icons{margin-top:30px;gap:5px;}
.contact-card .social-icons a{width:50px;height:50px;border-radius:50%;}
.contact-card .social-icons svg{width:25px;height:25px;}
.contact__write{margin-top:70px;}
.contact-form-panel{display:flex;gap:58px;background:#fff;border-radius:10px;padding:10px 38px;}
.contact-form-panel__img{flex:0 0 377px;}
.contact-form-panel__img img{width:377px;height:580px;object-fit:cover;border-radius:10px;display:block;}
.contact-form-panel__form{flex:1;min-width:0;padding-top:10px;}
.contact-form-panel__form h3{margin:0 0 20px;font-family:var(--font-roboto);font-weight:600;font-size:20px;line-height:1.2;color:#000;}
.hw-form{font-family:var(--font-system);color:#000;}
.hw-form__field{margin:0 0 20px;border:0;padding:0;}
.hw-form__label{display:block;margin:0 0 8px;font-weight:700;font-size:16px;}
.hw-form__req{color:#d63637;margin-left:2px;}
.hw-form__name{display:flex;gap:20px;}
.hw-form__name > div{flex:1;}
.hw-form input[type=text],.hw-form input[type=email],.hw-form textarea{width:100%;height:43px;padding:6px 12px;border:1px solid rgba(0,0,0,.25);border-radius:3px;background:#fff;color:#000;font-size:16px;}
.hw-form textarea{height:120px;resize:vertical;}
.hw-form__sublabel{display:block;margin-top:5px;font-size:14px;color:rgba(0,0,0,.6);}
.hw-form__submit{display:flex;justify-content:flex-end;}
.hw-form__btn{padding:10px 25px;height:41px;border:0;border-radius:50px;background:#000;color:#fff;font-size:17px;font-weight:500;cursor:pointer;}
.hw-form__note{margin:12px 0 0;font-size:14px;color:var(--hw-grey);}
.light-band{margin-top:70px;line-height:0;}
.light-band img{width:100%;display:block;}
@media (max-width:767px){
  .contact{padding-top:40px;}
  .contact-cards{grid-template-columns:1fr;}
  .contact-form-panel{flex-direction:column;gap:20px;padding:20px;}
  .contact-form-panel__img{flex:none;}
  .contact-form-panel__img img{width:100%;height:auto;}
  .hw-form__name{flex-direction:column;gap:12px;}
}

/* 15. Coming Soon ----------------------------------------------------------- */
.soon{padding:90px 0 0;}
.soon__inner{max-width:1140px;margin:0 auto;padding:0 10px;display:flex;align-items:center;gap:20px;}
.soon__text{flex:1;padding-left:50px;}
.soon__brand{display:flex;align-items:center;gap:10px;margin-bottom:20px;}
.soon__brand img{width:50px;height:auto;}
.soon__brand span{font-family:var(--font-roboto);font-weight:600;font-size:25px;color:#fff;}
.soon__title{margin:0 0 20px;font-family:var(--font-roboto);font-weight:600;font-size:55px;line-height:55px;color:#fff;}
.soon__tagline{margin:0 0 30px;font-family:var(--font-roboto);font-weight:600;font-size:16px;color:var(--hw-pink);}
.soon__follow{display:flex;align-items:center;gap:30px;}
.soon__follow-label{width:70px;font-family:var(--font-roboto);font-weight:600;font-size:16px;line-height:16px;color:#fff;}
.soon__follow-line{width:108px;height:1px;background:#fff;}
.soon .social-icons{gap:30px;}
.soon .social-icons a{width:auto;height:auto;background:none;}
.soon .social-icons svg{width:25px;height:25px;}
.soon__art{flex:0 0 540px;background:#fff;border-radius:100%;text-align:center;line-height:0;}
.soon__art img{width:388px;display:inline-block;}
@media (max-width:1024px){ .soon__art{flex-basis:400px;} .soon__art img{width:300px;} .soon__text{padding-left:20px;} }
@media (max-width:767px){
  .soon{padding-top:50px;}
  .soon__inner{flex-direction:column;}
  .soon__text{padding:0 20px;}
  .soon__title{font-size:44px;line-height:48px;}
  .soon__follow{flex-wrap:wrap;gap:20px;}
  .soon__art{flex:none;width:100%;}
  .soon__art img{width:72%;}
}

/* 16. Legal pages ----------------------------------------------------------- */
.legal{padding:70px 0 0;}
.legal .container{max-width:1140px;}
.legal__title{margin:0 0 50px;font-family:var(--font-barlow);font-weight:600;font-size:40px;line-height:40px;color:var(--hw-pink);}
.legal__body{font-family:var(--font-barlow);font-size:16px;line-height:24px;color:#000;}
.legal__body ul{margin:0 0 .9em;padding-left:1.4em;}

/* 17. Search results / 404 -------------------------------------------------- */
.search-page,.notfound{padding:80px 0 40px;min-height:50vh;}
.search-page .container,.notfound .container{max-width:1140px;}
.search-form{display:flex;gap:10px;max-width:640px;margin:0 auto 30px;}
.search-form input{flex:1;height:45px;padding:0 15px;border:0;border-radius:20px;font-family:var(--font-barlow);font-weight:600;font-size:16px;}
.search-form button{height:45px;padding:0 24px;border:0;border-radius:30px;background:var(--hw-pink);color:#fff;font-family:var(--font-barlow);font-weight:700;font-size:16px;cursor:pointer;}
.search-status{margin:0 0 20px;text-align:center;font-family:var(--font-barlow);font-size:18px;color:#fff;}
.search-results{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;list-style:none;margin:0;padding:0;}
.search-result{background:#fff;border-radius:15px;overflow:hidden;}
.search-result a{display:block;color:#000;}
.search-result img{width:100%;aspect-ratio:360/200;object-fit:cover;display:block;}
.search-result__body{padding:15px 18px 20px;}
.search-result__title{margin:0 0 8px;font-family:var(--font-barlow);font-weight:700;font-size:20px;line-height:1.1;color:var(--hw-pink);}
.search-result__text{margin:0;font-family:var(--font-roboto);font-size:14px;line-height:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.notfound__text{margin:0 0 30px;text-align:center;font-family:var(--font-barlow);font-size:18px;color:#fff;}
.notfound .btn-contact{display:table;margin:0 auto;}
@media (max-width:1024px){ .search-results{grid-template-columns:repeat(3,1fr);} }
@media (max-width:767px){ .search-results{grid-template-columns:1fr 1fr;gap:12px;} .search-form{padding:0 10px;} }

/* 18. Utilities ------------------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;}
  .carousel__track,.hero-slider__track{transition:none!important;}
}
