@import url('https://fonts.googleapis.com/css2?family=Audiowide&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Racing+Sans+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Signika+Negative:wght@300..700&family=Unbounded:wght@200..900&display=swap');

/* Global Styles */
html,
body {
    font-family: "Audiowide", sans-serif;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    background-color: #fdfee9;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
}
body.stock-page {
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

body.home-page {
    background-color: #9bd4e4 !important;
    background-image: none;
}

.home {
    background: linear-gradient(90deg, #6A1B9A, #4A148C);
    color: white;
}

.blauwelijn{
    background-color: #9bd4e4;
    text-align: right;
    padding: 3px 0;
    width: 100%;
    margin: 0;
    max-height: 3px;
}

.trustpilot-container {
    display: flex;
    justify-content:end; /* Duwt de widget helemaal naar rechts */
    background-color: #fdfee9; /* Optioneel: lichte achtergrond voor contrast */
}

.trustpilot-widget {
    margin-left: 67vw;
}


.recommendations-bar {
    box-sizing:border-box;
    background: #042698;
    color: #fff;
    padding: .75rem 1rem .85rem;
    width: 100%;
    margin: 0;
    font-family: "Racing Sans One", sans-serif;
    box-shadow: 0 10px 20px rgba(4,38,152,.16);
}

.stock-header-bar{
    box-sizing:border-box;
    width:min(1500px, calc(100% - 1rem));
    margin:0 auto;
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
    align-items:center;
    gap:.75rem;
    position:relative;
}

.stock-heading-copy{
    grid-column:2;
    display:grid;
    gap:.24rem;
    text-align:center;
}

.recommendations-bar h2 {
    display:block;
    padding:0;
    font-size: clamp(1.2rem, 3vw, 2rem);
    margin: 0;
    font-weight: 500;
    color:#fff;
}

.stock-heading-copy p{
    margin:0;
    color:#fff;
    font-family:"Signika Negative", system-ui, sans-serif;
    font-size:clamp(.86rem, 1.4vw, 1.08rem);
    font-weight:800;
    line-height:1.2;
}

.stock-controls{
    min-width:0;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:.45rem;
    flex-wrap:wrap;
    grid-column:3;
    justify-self:end;
    font-family:system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

.stock-control{
    position:relative;
}

.stock-control summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:.45rem;
    min-height:30px;
    border:1px solid rgba(253,254,233,.92);
    border-radius:999px;
    background:rgba(253,254,233,.96);
    color:#042698;
    padding:.28rem .62rem;
    font-size:.8rem;
    font-weight:800;
    line-height:1;
    box-shadow:0 6px 14px rgba(0,0,0,.12);
}

.stock-control summary::-webkit-details-marker{
    display:none;
}

.stock-control summary::after{
    content:"";
    width:.44rem;
    height:.44rem;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-1px);
}

.stock-control[open] summary::after{
    transform:rotate(225deg) translateY(-1px);
}

.stock-control-panel{
    position:absolute;
    top:calc(100% + .5rem);
    left:50%;
    transform:translateX(-50%);
    z-index:20;
    width:max-content;
    min-width:176px;
    max-width:calc(100vw - 2rem);
    display:grid;
    gap:.5rem;
    border:2px solid #042698;
    border-radius:16px;
    background:#fdfee9;
    color:#0b1a3a;
    padding:.6rem;
    box-shadow:0 18px 38px rgba(4,38,152,.24);
}

.stock-filter-panel{
    left:auto;
    right:0;
    transform:none;
    width:min(360px, calc(100vw - 2rem));
    min-width:min(360px, calc(100vw - 2rem));
    gap:.7rem;
    max-height:min(620px, calc(100vh - 9rem));
    overflow:auto;
}

.stock-sort-panel{
    width:218px;
}

.stock-sort-option{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:38px;
    border:1px solid rgba(4,38,152,.18);
    border-radius:12px;
    background:#fff;
    color:#0b1a3a;
    padding:.5rem .65rem;
    font-size:.92rem;
    font-weight:850;
    line-height:1;
    text-decoration:none;
}

.stock-sort-option::after{
    content:"";
    width:.42rem;
    height:.42rem;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(-45deg);
    opacity:.45;
}

.stock-sort-option.is-active{
    background:#042698;
    border-color:#042698;
    color:#fdfee9;
}

.stock-sort-option.is-active::after{
    content:"";
    width:.7rem;
    height:2px;
    background:currentColor;
    border:0;
    transform:none;
    opacity:1;
}

.stock-control-panel label{
    display:grid;
    gap:.34rem;
    color:#0b1a3a;
    font-size:.82rem;
    font-weight:800;
}

.stock-control-panel select{
    width:100%;
    border:1px solid rgba(4,38,152,.22);
    border-radius:12px;
    background:#fff;
    color:#0b1a3a;
    padding:.6rem .7rem;
    font:750 .92rem system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    box-shadow:0 4px 10px rgba(4,38,152,.06);
}

.stock-filter-group{
    min-width:0;
    margin:0;
    border:0;
    padding:0;
}

.stock-filter-group summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.7rem;
    min-height:34px;
    margin:0;
    border:1px solid rgba(4,38,152,.18);
    border-radius:12px;
    background:rgba(255,255,255,.72);
    padding:.42rem .55rem;
    color:#0b1a3a;
    font-size:.8rem;
    font-weight:900;
    line-height:1;
}

.stock-filter-group summary::-webkit-details-marker{
    display:none;
}

.stock-filter-group summary::after{
    content:"";
    width:.42rem;
    height:.42rem;
    flex:0 0 .42rem;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-1px);
    opacity:.7;
}

.stock-filter-group[open] summary{
    background:#fff;
    border-color:rgba(4,38,152,.34);
}

.stock-filter-group[open] summary::after{
    transform:rotate(225deg) translateY(-1px);
}

.stock-filter-choice-grid{
    display:flex;
    flex-wrap:wrap;
    gap:.35rem;
    padding:.45rem 0 .1rem;
}

.stock-filter-choice{
    min-width:0;
    display:inline-flex;
    cursor:pointer;
}

.stock-filter-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}

.stock-filter-choice span{
    max-width:100%;
    display:inline-flex;
    align-items:center;
    min-height:30px;
    border:1px solid rgba(4,38,152,.2);
    border-radius:999px;
    background:#fff;
    color:#0b1a3a;
    padding:.36rem .55rem;
    font:800 .78rem system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    line-height:1;
    box-shadow:0 4px 10px rgba(4,38,152,.05);
}

.stock-filter-choice:hover span{
    border-color:rgba(4,38,152,.45);
}

.stock-filter-choice input:focus-visible + span{
    outline:2px solid #042698;
    outline-offset:2px;
}

.stock-filter-choice.is-active span,
.stock-filter-choice input:checked + span{
    background:#042698;
    border-color:#042698;
    color:#fdfee9;
}

.stock-filter-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:.7rem;
    margin-top:.2rem;
}

.stock-filter-actions button,
.stock-filter-actions a{
    flex:1 1 0;
    text-align:center;
    border:2px solid #042698;
    border-radius:999px;
    padding:.56rem .78rem;
    font:800 .88rem system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    text-decoration:none;
}

.stock-filter-actions button{
    cursor:pointer;
    background:#042698;
    color:#fdfee9;
}

.stock-filter-actions a{
    background:#fff;
    color:#042698;
}

.info-section {
    margin-top: 0;
    background-image: url("../images/Goede_achtergrondv2.png");
    background-size: 78% auto;
    background-position: center 15%;
    background-repeat: no-repeat;
    background-color: #9bd4e4;
    border-radius: 0;
    box-shadow: none;
    color: rgb(0, 0, 0);
    list-style-type: none;
    text-align: center;
    font-size: large;
    min-height: 62vh;
    padding: 0;
}
.info-section li { list-style-type: none; }
.info-section h2 {
    margin-top: 0;
    font-size: 2.4vw;
    text-align: center;
}
.info-section h1 {
    font-size: 3.0vw;
    text-align: center;
}
.info-section dl { text-align: center; }
.info-section dt {
    font-size: 2vw;
    padding-bottom: 0.5vw;
}
.info-section dd {
    padding-bottom: 2vw;
    font-style: italic;
}

.info-section-contact {
    margin: 15vh 15vw;
    max-width: 100%;
    text-align: left;
    background-color: #f8f9fa;
    padding: 2vh 5vw;
    border-radius: 0.5vw;
    box-shadow: 0vw 0.4vw 1vw rgba(0, 0, 0, 0.1);
    color: black;
    display: flex;
}

.info-section-login {
    margin: 4vh auto;
    margin-bottom: 20vh;
    max-width: 75vw;
    text-align: left; 
    background-color: #f8f9fa;
    padding: 3vh 3vw;
    border-radius: 0.5vw;
    box-shadow: 0vw 0.4vw 1vw rgba(0, 0, 0, 0.1);
    color: black;
}
.info-section-login h1 { text-align: center; }

.info-section-terms {
    margin: 20vh auto;
    margin-bottom: 20vh;
    max-width: 75vw;
    text-align: left; 
    background-color: #f8f9fa;
    padding: 3vh 3vw;
    border-radius: 0.5vw;
    box-shadow: 0vw o.4vw 1vw rgba(0, 0, 0, 0.1);
    color: black;
}
.info-section-terms h1 { text-align: center; }

main {
  background: #9bd4e4;
  font-family:"Audiowide", sans-serif;
  padding-bottom: 3.5rem;
}

.section-shell{
  border-radius:24px;
  padding:1rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.82) 0%, rgba(248,246,241,.96) 100%);
  border:1px solid rgba(32,48,66,.1);
  box-shadow:0 14px 28px rgba(32,48,66,.06);
}
.section-heading{
  margin:0 0 .75rem;
  text-align:left;
}
.section-heading h3{
  margin:0;
  color:#203042;
  font-size:clamp(1.2rem, 2.2vw, 1.8rem);
  line-height:1.08;
  font-family:"Signika Negative", sans-serif;
  font-weight:700;
}
.section-heading-compact h3{
  max-width:18ch;
}
.section-kicker{
  margin:0 0 .35rem;
  color:#5b6f82;
  font-family:"Signika Negative", sans-serif;
  font-size:.82rem;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-weight:700;
}
.mobile-section-title{
  display:flex;
  justify-content:center;
  margin:.9rem auto 0;
  padding:0 1rem;
}
.mobile-section-title h2{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:.55rem 1.35rem;
  border-radius:999px;
  border:1px solid rgba(32,48,66,.12);
  background:rgba(253,254,233,.72);
  box-shadow:0 8px 22px rgba(32,48,66,.08);
  color:#042698;
  font-family:"Racing Sans One", sans-serif;
  font-size:clamp(1.15rem, 2.5vw, 1.8rem);
  font-weight:500;
  line-height:1;
}

/* Carousel */
.carousel-section {
  background-color: transparent;
  padding: .8rem 0 1.2rem;
  overflow: hidden;
}
#myCarousel {
  background:
    radial-gradient(circle at top, rgba(255,255,255,.36), transparent 38%),
    linear-gradient(180deg, #e3ebee 0%, #cfdbe0 100%);
  border-radius: 24px;
  border:1px solid rgba(32,48,66,.08);
  overflow: hidden;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.5), 0 12px 24px rgba(32,48,66,.06);
}
#myCarousel .carousel-item {
  background-color: transparent;
  text-align: center;
  min-height: 505px;
}
#myCarousel .carousel-item::before{
  content:"";
  position:absolute;
  inset:8% 6% 8% 6%;
  border-radius:30px;
  background:linear-gradient(180deg, rgba(255,255,255,.42), rgba(255,255,255,.12));
  border:1px solid rgba(255,255,255,.32);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45);
  pointer-events:none;
}
#myCarousel .carousel-item img {
  position:relative;
  z-index:1;
  max-height: 334px;
  max-width: 62%;
  width: auto;
  margin: 1.55rem auto 0;
  object-fit: contain;
  display: block;
  filter:drop-shadow(0 18px 22px rgba(32,48,66,.14));
  transition:transform .32s ease, filter .32s ease;
}
#myCarousel .carousel-item:hover img{
  transform:translateY(-4px) scale(1.015);
  filter:drop-shadow(0 24px 32px rgba(32,48,66,.18));
}
#myCarousel .carousel-caption {
  position: absolute;
  left: 50%;
  right: auto;
  top: auto;
  bottom: 54px;
  transform: translateX(-50%);
  width: min(84%, 760px);
  display: block !important;
  background: rgba(244,241,234,.9);
  color: #203042;
  border:1px solid rgba(32,48,66,.08);
  border-radius: 22px;
  padding: 15px 16px;
  box-shadow: 0 14px 34px rgba(32,48,66,.14);
  text-align: left;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  backdrop-filter: blur(10px);
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:1rem;
  align-items:end;
  z-index:3;
}
.carousel-copy{
  min-width:0;
}
.carousel-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin:0 0 .55rem;
}
.carousel-meta span{
  display:inline-flex;
  align-items:center;
  padding:.3rem .62rem;
  border-radius:999px;
  background:rgba(203,216,222,.42);
  border:1px solid rgba(32,48,66,.08);
  color:#556977;
  font-size:.76rem;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
}
#myCarousel .carousel-caption h5,
#myCarousel .carousel-caption p {
  color: #203042;
  margin-bottom: 4px;
}
#myCarousel .carousel-caption h5{
  font-size:1.28rem;
  margin-bottom:.35rem;
}
#myCarousel .carousel-caption p{
  font-size:.98rem;
  line-height:1.38;
  color:#55606c;
  margin-bottom:0;
}
#myCarousel .carousel-caption .carousel-price {
  font-size: 1.34rem;
  font-weight: 700;
  color:#203042;
}
#myCarousel .carousel-cta-row{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:flex-end;
  gap:.55rem;
  margin-top:0;
}
#myCarousel .carousel-caption .btn {
  border-radius: 999px;
  font-weight: 700;
  padding: .58rem 1.02rem;
  white-space:nowrap;
}
#myCarousel .carousel-control-prev-icon,
#myCarousel .carousel-control-next-icon {
  filter: invert(1) contrast(1.1);
}
#myCarousel { --bs-carousel-control-opacity: 1; }

/* Model icons below carousel */
.models-bar{
  background-color:transparent;
  color:#042698;
  text-align:center;
  padding:.35rem 0 0;
  width:100%;
  margin:0;
  font-family:"Racing Sans One", sans-serif;
}
.models-bar h2{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin:0;
  padding:.55rem 1.35rem;
  border-radius:999px;
  border:1px solid rgba(32,48,66,.12);
  background:rgba(253,254,233,.72);
  box-shadow:0 8px 22px rgba(32,48,66,.08);
  font-size:clamp(1.15rem, 2.5vw, 1.8rem);
  font-family:"Racing Sans One", sans-serif;
  font-weight:500;
}
.models-showcase{
  background:transparent;
  padding-top:.85rem;
}
.models-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(132px, 1fr));
  gap:.75rem;
}
.model-mini-link{
  text-decoration:none;
  color:inherit;
  display:block;
}
.model-mini{
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(32,48,66,.12);
  border-radius:18px;
  padding:.62rem .48rem .46rem;
  text-align:center;
  width:100%;
  max-width:none;
  display:flex;
  flex-direction:column;
  align-items:center;
  box-shadow:0 10px 20px rgba(32,48,66,.06);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.model-mini:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 28px rgba(32,48,66,.1);
  border-color:rgba(32,48,66,.2);
}
.model-mini-link:hover .model-mini-thumb{
  transform:translateY(-2px);
  filter:drop-shadow(0 4px 8px rgba(4,38,152,.22));
}
.model-mini-name{
  margin:0 0 .35rem;
  font-size:.84rem;
  line-height:1.2;
  color:#042698;
  font-family:"Signika Negative", sans-serif;
  font-weight:700;
  min-height:2.2em;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.model-mini-thumb{
  width:82px;
  height:132px;
  object-fit:contain;
  object-position:center;
  display:block;
  image-rendering: auto;
  transform: translateZ(0);
}

.home-device-strip-heading{
  background-color:transparent;
  color:#042698;
  text-align:center;
  padding:.35rem 0 0;
  width:100%;
  margin:0 0 1rem;
  font-family:"Racing Sans One", sans-serif;
}
.home-device-strip-heading h2{
  display:block;
  margin:0;
  padding:0;
  border:none;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:#042698;
  font-size:clamp(1.7rem, 3.2vw, 2.55rem);
  line-height:1.04;
  font-family:"Racing Sans One", sans-serif;
  font-weight:500;
}
.home-device-strip-section{
  background:transparent;
  padding-top:.85rem;
}
.home-device-strip{
  display:flex;
  flex-wrap:nowrap;
  justify-content:center;
  gap:.75rem;
  overflow-x:auto;
  overflow-y:hidden;
  padding:.15rem .2rem .55rem;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
}
.home-device-strip::-webkit-scrollbar{
  display:none;
}
.home-device-tile{
  flex:0 0 132px;
  width:132px;
  background:linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
  border:1px solid rgba(32,48,66,.12);
  border-radius:18px;
  padding:.62rem .48rem .46rem;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  scroll-snap-align:start;
  box-shadow:0 10px 20px rgba(32,48,66,.06);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.home-device-tile:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 28px rgba(32,48,66,.1);
  border-color:rgba(32,48,66,.2);
}
.home-device-tile__link{
  text-decoration:none;
  color:inherit;
  display:block;
}
.home-device-tile__link:hover .home-device-tile__thumb{
  transform:translateY(-2px);
  filter:drop-shadow(0 4px 8px rgba(4,38,152,.22));
}
.home-device-tile__name{
  margin:0 0 .35rem;
  font-size:.84rem;
  line-height:1.2;
  color:#042698;
  font-family:"Signika Negative", sans-serif;
  font-weight:700;
  min-height:2.2em;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}
.home-device-tile__thumb{
  width:82px;
  height:132px;
  object-fit:contain;
  object-position:center;
  display:block;
  image-rendering:auto;
  transform:translateZ(0);
}

/* Yellow text block */
.why-phoney{
  background:
    linear-gradient(180deg, rgba(255,255,255,.94) 0%, rgba(247,244,239,.96) 100%);
  border:1px solid rgba(32,48,66,.1);
  border-radius:24px;
  margin:1rem auto;
  padding:1rem;
  box-shadow:0 14px 28px rgba(32,48,66,.06);
}
.why-phoney > .why-phoney-highlights{
  margin-bottom: 1rem;
}
.why-phoney h3{
  margin:0 0 .5rem;
  color:#042698;
  font-size:clamp(1.65rem, 3vw, 2.35rem);
  line-height:1.05;
}
.why-phoney p{
  margin:0 0 .6rem;
  color:#10214f;
  font-size:1rem;
  line-height:1.45;
  font-family:"Signika Negative", sans-serif;
}
.why-phoney ul{
  margin:0 0 .7rem 1.1rem;
  padding:0;
  color:#10214f;
  font-family:"Signika Negative", sans-serif;
}
.why-phoney li{
  margin:0 0 .4rem;
  line-height:1.45;
}
.why-phoney-intro{
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(280px, .9fr);
  gap:1.2rem;
  align-items:start;
  margin-bottom:1rem;
}
.why-phoney-copy{
  padding:1rem 1.05rem;
  border-radius:20px;
  background:
    linear-gradient(135deg, rgba(29,44,60,.96) 0%, rgba(57,78,98,.9) 60%, rgba(147,165,174,.74) 100%);
  color:#f4f1ea;
  box-shadow:0 12px 24px rgba(32,48,66,.14);
  font-family:"Signika Negative", sans-serif;
}
.why-phoney-copy h3,
.why-phoney-copy p,
.why-phoney-copy .why-eyebrow{
  color:#fdfee9;
}
.why-eyebrow{
  margin:0 0 .55rem;
  font-size:.82rem;
  letter-spacing:.1em;
  text-transform:uppercase;
  font-family:"Signika Negative", sans-serif;
  font-weight:700;
  opacity:.84;
}
.why-lead{
  margin:0;
  max-width:52ch;
  font-size:.98rem;
  line-height:1.42;
}
.why-phoney-highlights{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:.7rem;
}
.why-highlight-card{
  min-height:100%;
  padding:1.15rem 1rem;
  border-radius:18px;
  border:1px solid rgba(32,48,66,.1);
  background:linear-gradient(180deg, #ffffff 0%, #f6f4ef 100%);
  box-shadow:0 10px 24px rgba(32,48,66,.06);
}
.why-highlight-card > strong{
  display:block;
  margin:0 0 .52rem;
  color:#042698;
  font-size:1.32rem;
  line-height:1.05;
  font-family:"Unbounded", sans-serif;
}
.why-highlight-card p{
  margin:0;
  font-size:.94rem;
  line-height:1.4;
}
.why-read-more{
  display:inline-flex;
  align-items:center;
  margin-top:.85rem;
  color:#042698;
  font-size:.9rem;
  font-weight:700;
  text-decoration:none;
  font-family:"Signika Negative", sans-serif;
}
.why-read-more:hover{
  text-decoration:underline;
}
.why-read-more-row{
  display:flex;
  justify-content:center;
  margin-top:1rem;
}
.why-highlight-card p strong{
  font-size: inherit;
  font-weight: 700;
  font-family: inherit;
  color: inherit;
}
.why-phoney-panels{
  display:grid;
  gap:.8rem;
}
.why-mobile-card{
  display:none;
}
.why-dropdown{
  margin:0;
  border:1px solid rgba(32,48,66,.1);
  border-radius:18px;
  padding:.82rem .95rem;
  background:
    linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(244,248,255,.96) 100%);
  box-shadow:0 8px 20px rgba(32,48,66,.05);
}
.why-sub-dropdown{
  margin:.6rem 0 0;
  border:1px solid rgba(32,48,66,.12);
  border-radius:12px;
  padding:.7rem .8rem;
  background:#fff;
}
.why-dropdown summary{
  cursor:pointer;
  color:#042698;
  font-weight:700;
  margin:0 0 .45rem;
  font-family:"Signika Negative", sans-serif;
  list-style: none;
  display: flex;
  align-items: center;
  gap: .4rem;
  font-size:1.02rem;
}
.why-sub-dropdown summary{
  cursor:pointer;
  color:#042698;
  font-weight:700;
  margin:0 0 .4rem;
  font-family:"Signika Negative", sans-serif;
  list-style: none;
  display: flex;
  align-items: center;
  gap: .35rem;
}
.why-dropdown summary::-webkit-details-marker,
.why-sub-dropdown summary::-webkit-details-marker{
  display:none;
}
.why-dropdown summary::before,
.why-sub-dropdown summary::before{
  content:"▸";
  color:#042698;
  font-size:.95em;
  line-height:1;
  transform:rotate(0deg);
  transition:transform .2s ease;
}
.why-dropdown[open] > summary::before,
.why-sub-dropdown[open] > summary::before{
  transform:rotate(90deg);
}
.why-dropdown p{
  margin:0 0 .5rem;
}
.why-phoney a{
  color:#042698;
  font-weight:700;
}

.refurbished-bar{
  margin-top:.15rem;
}

.models-showcase,
.home-device-strip-section,
.why-phoney{
  box-shadow:none;
}

@media (max-width: 900px){
  body.stock-page .recommendations-bar{
    padding:.75rem .7rem;
  }
  .stock-header-bar{
    display:flex;
    flex-direction:column;
    gap:.55rem;
  }
  .stock-controls{
    width:100%;
    justify-content:center;
    flex-wrap:wrap;
  }
  .stock-control{
    flex:0 1 auto;
    max-width:100%;
  }
  .stock-control summary{
    justify-content:center;
    min-height:28px;
    padding:.25rem .5rem;
    font-size:.74rem;
  }
  .stock-control-panel{
    position:absolute;
    top:calc(100% + .35rem);
    left:50%;
    right:auto;
    transform:translateX(-50%);
    width:min(78vw, 230px);
    min-width:min(78vw, 210px);
    max-width:78vw;
    max-height:62vh;
    overflow:auto;
    gap:.4rem;
    padding:.48rem;
    border-radius:13px;
  }
  .stock-filter-panel{
    left:auto;
    right:0;
    transform:none;
    width:min(84vw, 285px);
    min-width:min(84vw, 240px);
    max-width:84vw;
    gap:.5rem;
  }
  .stock-sort-panel{
    width:min(80vw, 220px);
  }
  .stock-sort-option{
    min-height:34px;
    border-radius:10px;
    padding:.42rem .55rem;
    font-size:.82rem;
  }
  .stock-control-panel label{
    gap:.22rem;
    font-size:.72rem;
  }
  .stock-control-panel select{
    border-radius:10px;
    padding:.46rem .52rem;
    font-size:.8rem;
  }
  .stock-filter-group summary{
    min-height:30px;
    padding:.36rem .46rem;
    font-size:.7rem;
  }
  .stock-filter-choice-grid{
    gap:.28rem;
  }
  .stock-filter-choice span{
    min-height:27px;
    padding:.32rem .46rem;
    font-size:.7rem;
  }
  .stock-filter-actions{
    gap:.45rem;
  }
  .stock-filter-actions button,
  .stock-filter-actions a{
    padding:.45rem .52rem;
    font-size:.78rem;
  }
  .hero-copy{
    padding:.92rem .92rem .98rem;
  }
  .hero-shell{
    padding-top: 5.9rem;
  }
  .hero-copy h1{
    max-width:none;
    font-size:clamp(1.55rem, 7vw, 2.1rem);
  }
  .hero-actions{
    flex-direction:column;
  }
  .hero-button{
    width:100%;
    min-width:0;
  }
  .section-shell,
  .why-phoney{
    padding:1rem;
    border-radius:18px;
  }
  .info-section{
    min-height:auto;
    border-radius:0 0 24px 24px;
    padding:1.2rem 0 1.75rem;
  }
  .why-phoney-intro{
    grid-template-columns:1fr;
  }
  .why-phoney-highlights{
    grid-template-columns:1fr;
  }
  .models-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  .home-device-strip{
    gap:.45rem;
    padding:.2rem .15rem .35rem;
    scroll-snap-type:x mandatory;
    justify-content:flex-start;
  }
  .home-device-tile{
    flex-basis:92px;
    width:92px;
    max-width:96px;
    padding:.16rem .12rem .2rem;
    border-radius:14px;
  }
  .home-device-tile__name{
    font-size:.6rem;
    margin-bottom:.12rem;
    min-height:2.2em;
  }
  .home-device-tile__thumb{
    width:auto;
    height:96px;
    max-width:76px;
  }
  #myCarousel .carousel-item{
    min-height:420px;
  }
  #myCarousel .carousel-item::before{
    inset:6% 4% 6% 4%;
  }
  #myCarousel .carousel-item img{
    max-height:220px;
    max-width:82%;
    margin:1rem auto 0;
  }
  #myCarousel .carousel-caption{
    width:calc(100% - 1rem);
    left:50%;
    bottom:1.1rem;
    transform:translateX(-50%);
    text-align:left;
    grid-template-columns:1fr;
    gap:.65rem;
  }
}

/* Deals section */
.deals-section { max-width: 1500px; margin: auto; padding: 20px; background-color: #9bd4e4; }
.deals-section header h1 { margin-bottom: 6px; font-size: 1.8rem; }
.deals-section header p { color: #777; margin-top: 0; }

.deals-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  align-items:stretch;
}
@media (max-width: 960px) { .deals-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 520px) { .deals-grid { grid-template-columns: 1fr; } }

:root{
  --blue:#042698;
  --bg:#fdfee9;
  --panel:#9bd4e4;
}

/* Deal cards */
.deal-card{
  position:relative;
  display:grid;
  grid-template-rows:auto auto 1fr auto;
  gap:.72rem;
  padding:1rem;
  border:2px solid var(--blue);
  border-radius:16px;
  background:var(--bg);
  box-shadow:0 6px 20px rgba(0,0,0,.06);
  max-width:360px;
  min-width:0;
}
.deal-badge{
  position:absolute;
  top:.5rem; right:.5rem;
  background:var(--panel);
  border:2px solid var(--blue);
  border-radius:999px;
  padding:.25rem .6rem;
  font-weight:700;
  font-size:.9rem;
}
.model{
  margin:0;
  text-align:center;
  font-family:"Unbounded", "Signika Negative", system-ui, sans-serif;
  font-size:clamp(1.12rem, 1.7vw, 1.62rem);
  line-height:1.15;
  font-weight:900;
  color:#042698;
  white-space:normal;
  overflow-wrap:normal;
  word-break:normal;
  min-height:2.3em;
  max-height:none;
  overflow:visible;
  text-overflow:clip;
}
.deal-spec-pill{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
  gap:.45rem;
  border:2px solid var(--blue);
  border-radius:999px;
  background:#9bd4e4;
  color:#042698;
  padding:.4rem .68rem;
}
.deal-spec-main{
  min-width:0;
  display:grid;
  gap:.06rem;
  font-family:"Signika Negative", system-ui, sans-serif;
  font-size:clamp(.92rem, 1.4vw, 1.13rem);
  font-weight:900;
  line-height:.95;
}
.deal-price{
  color:#042698;
  font-family:"Signika Negative", system-ui, sans-serif;
  font-size:clamp(1.18rem, 2vw, 1.65rem);
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  font-variant-numeric:tabular-nums;
}
.deal-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:.75rem;
}
.deal-row--coming-soon{
  justify-content:center;
}
.deal-card--coming-soon{
  overflow:hidden;
  border:2px solid #042698;
  background:
    radial-gradient(circle at 15% 15%, rgba(255,255,255,.45), transparent 42%),
    radial-gradient(circle at 85% 85%, rgba(255,255,255,.35), transparent 40%),
    linear-gradient(140deg, #9bd4e4 0%, #7ec2d9 35%, #5daac8 100%);
  box-shadow:
    0 10px 26px rgba(4,38,152,.2),
    inset 0 0 0 2px rgba(253,254,233,.75);
}
.deal-card--coming-soon::before{
  content:"";
  position:absolute;
  top:-30%;
  left:-45%;
  width:70%;
  height:180%;
  background:linear-gradient(90deg, transparent 0%, rgba(255,255,255,.45) 50%, transparent 100%);
  transform:rotate(18deg);
  animation:comingSoonShine 3.8s ease-in-out infinite;
  pointer-events:none;
}
.deal-card--coming-soon .model{
  color:#042698;
}
.coming-soon-kicker{
  margin:-.25rem 0 .25rem;
  text-align:center;
  color:#0f2d6f;
  font-size:.95rem;
  font-weight:700;
  letter-spacing:.03em;
}
.deal-card--coming-soon .chip.price{
  background:#fdfee9;
  border-color:#042698;
  color:#042698;
  font-size:1rem;
  padding:.5rem .95rem;
  text-transform:uppercase;
  letter-spacing:.05em;
}
@keyframes comingSoonShine{
  0%{ transform: translateX(-120%) rotate(18deg); opacity:0; }
  15%{ opacity:.65; }
  55%{ opacity:.65; }
  100%{ transform: translateX(230%) rotate(18deg); opacity:0; }
}
.price{ flex:0 0 auto; }
.chip{
  background:var(--panel);
  border:2px solid var(--blue);
  border-radius:12px;
  padding:.5rem .85rem;
  line-height:1;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;
}
.chip.gb {
  padding: .5rem 1.05rem;
  min-width: 94px;
  text-align: center;
}
.chip.price{ font-variant-numeric:tabular-nums; }
.chip .old, .old{ 
  margin-left:.35rem; 
  opacity:.7; 
  text-decoration:line-through; 
  font-weight:600; 
}
.deal-media{
  margin:0;
  border-radius:14px;
  border:2px solid var(--blue);
  background:#fff0;
  padding:.5rem;
  display:grid;
  place-items:center;
  background:linear-gradient(#ffffff40,#ffffff10);
  align-self:stretch;
}
.deal-media--coming-soon-spacer{
  aspect-ratio:813 / 1000;
  visibility:hidden;
}
.deal-media img{
  max-width:100%;
  height:auto;
  display:block;
  object-fit:contain;
}
.deal-tag{
  justify-self:center;
  align-self:end;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  max-width:100%;
  margin-top:-1.35rem;
  border-radius:999px;
  background:#e7a1ea;
  color:#050505;
  padding:.34rem .7rem;
  font-family:"Signika Negative", system-ui, sans-serif;
  font-size:.88rem;
  font-weight:900;
  line-height:1;
  text-align:center;
  position:relative;
  z-index:2;
  box-shadow:0 4px 10px rgba(4,38,152,.12);
}
.deal-desc{ margin:0; color:#26324d; font-size:.95rem; }
.deal-link{
  display:inline-block;
  margin-top:.25rem;
  font-weight:700;
  color:var(--blue);
  text-decoration:underline;
  text-underline-offset:3px;
}
/* mobiel tweak */
@media (max-width:420px){
  .deal-card{ padding:.85rem; }
  .chip{ padding:.35rem .5rem; }
}

.btn {
  border: 1px solid #2a3650;
  background: #0e1320;
  color: #fff;
  padding: 8px 10px;
  border-radius: 8px;
  font-size: .9rem;
  cursor: pointer;
}
.btn:hover { background: #11172a; }

#map { height: 50vh; width: 100%; }

/* Footer Section */
