/* SENLARO V18 private: three requested-only cards, inheriting V17 quality and animations.
   Never loaded by the six primary cards. */
body.page-product.v18-extra.v18-aiyl {
 --v16-accent:#236e4f;
 --v16-accent-muted:#edf6ef;
 --v16-stroke:#cfdfd5;
}
body.page-product.v18-extra.v18-mbank {
 --v16-accent:#067e64;
 --v16-accent-muted:#edf7f3;
 --v16-stroke:#cbe3d8;
}
body.page-product.v18-extra.v18-ksb {
 --v16-accent:#355b82;
 --v16-accent-muted:#edf2f8;
 --v16-stroke:#d6e1ee;
}
body.page-product.v18-extra .v15-product-frame {
 min-width:0;
 background:#f3f8f6;
 padding:clamp(18px,2.8vw,29px);
}
body.page-product.v18-extra .v15-main-art {
 width:100%;
 max-height:300px;
 height:auto;
 display:block;
 border-radius:13px;
 object-fit:contain !important;
 box-shadow:0 7px 17px rgba(10,41,42,.08);
}
body.page-product.v18-extra .v15-frame-overline {
 color:var(--v16-accent);
 font-size:11px;
 letter-spacing:.085em;
 line-height:1.35;
}
body.page-product.v18-extra .v15-frame-meta {
 color:#345a5b;
 font-size:12px;
}
body.page-product.v18-extra .v15-visual-quick {
 color:#45656a;
 font-size:13px;
 line-height:1.55;
}
body.page-product.v18-extra .v15-hero {
 background:linear-gradient(115deg,var(--v16-accent-muted),#f8fbf9 69%,#eff5f3);
}
body.page-product.v18-extra .v15-lead {
 max-width:64ch;
}
body.page-product.v18-extra .v15-service-cost strong {
 letter-spacing:-.045em;
}
body.page-product.v18-extra .v15-bank-row strong {
 font-size:13px;
 overflow-wrap:anywhere;
}
body.page-product.v18-extra .v15-tags span {
 border-color:var(--v16-stroke);
 background:#f0f7f2;
 color:#184d42;
 line-height:1.4;
}
body.page-product.v18-extra .v14-callouts strong{
 color:#143948;
}
body.page-product.v18-extra .v14-related-card{
 background:#fff;
}
body.page-product.v18-extra .v14-last-box{
 background:#102f40;
}
body.page-product.v18-extra .v14-last-box h2{
 color:#fff!important;
}
body.page-product.v18-extra .v14-last-box p{
 color:#dceceb!important;
}
/* Minimum balance = money held in the client's bank account, not an extra service fee.
   Keep row and footnote visible; do not silently add it into SENLARO charges. */
body.page-product.v18-extra .v15-cost-footnote{
 max-width:66ch;
 line-height:1.65;
}
@media(min-width:851px){
 body.page-product.v18-extra .v15-hero-layout{
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);
  column-gap:clamp(20px,2.6vw,37px);
 }
 body.page-product.v18-extra .v15-product-frame{
  min-height:380px;
 }
 body.page-product.v18-extra .v15-main-art{
  max-height:290px;
 }
 body.page-product.v18-extra .v15-title{
  font-size:clamp(34px,3vw,45px);
 }
}
@media(max-width:850px){
 body.page-product.v18-extra .v15-visual-pane{
  display:none;
 }
 body.page-product.v18-extra .v15-mobile-art{
  display:block;
  object-fit:contain;
  aspect-ratio:4 / 3;
  max-width:132px;
  border:1px solid var(--v16-stroke);
  border-radius:12px;
 }
 body.page-product.v18-extra .v15-title{
  overflow-wrap:normal;
  word-break:normal;
  hyphens:auto;
  font-size:clamp(27px,5.8vw,37px);
  line-height:1.13;
 }
}
@media(max-width:570px){
 body.page-product.v18-extra .v15-headline-row{
  grid-template-columns:minmax(0,1fr) minmax(83px,24%);
  gap:8px;
 }
 body.page-product.v18-extra .v15-title{
  font-size:clamp(26px,6.55vw,35px);
 }
 body.page-product.v18-mbank .v15-title{
  font-size:clamp(24px,6.05vw,32px);
 }
 body.page-product.v18-extra .v15-bank-row strong{
  text-align:right;
 }
 body.page-product.v18-extra .v15-tags{
  gap:7px;
 }
 body.page-product.v18-extra .v15-tags span{
  padding:7px 9px;
  font-size:11px;
 }
 body.page-product.v18-extra .v14-spec-grid strong{
  overflow-wrap:break-word;
 }
}
@media(max-width:350px){
 body.page-product.v18-extra .v15-headline-row{
  grid-template-columns:minmax(0,1fr) 75px;
 }
 body.page-product.v18-extra .v15-title{
  font-size:25px;
 }
 body.page-product.v18-mbank .v15-title{
  font-size:23px;
 }
 body.page-product.v18-extra .v15-bank-row strong{
  text-align:left;
 }
}
/* Motion stays present but safe; no transparency on the price or lower CTA text. */
@media(prefers-reduced-motion:no-preference){
 body.page-product.v18-extra .v15-product-frame{
  transition:box-shadow .26s ease,transform .26s ease;
 }
 body.page-product.v18-extra .v15-product-frame:hover{
  transform:translateY(-4px);
  box-shadow:0 17px 32px rgba(19,60,50,.09);
 }
}
@media(prefers-reduced-motion:reduce){
 body.page-product.v18-extra *{
  animation:none!important;
  transition:none!important;
 }
}
