/* iConnect: the remaining storefront pages (2/11/2026): brand pages and the brand list, contact, the 404 page,
   the sitemap and the shared success page. Built from the design tokens, the same card, button and input
   language as the category, cart and account pages. Page sheet, outside the pruned ic-app.css bundle; each
   page's controller adds it with a filemtime version. */

/* ---- page shells ---- */
#product-manufacturer,#information-contact,#error-not-found,#information-sitemap,#common-success{
  max-width:var(--ic-container);margin-inline:auto;padding:8px 20px 56px;}
/* listings hide the page breadcrumb as the category page does; the 404 needs none */
#product-manufacturer > .breadcrumb,#error-not-found > .breadcrumb{display:none;}
.ic-page-title{font-family:var(--ic-head);font-weight:800;font-size:30px;line-height:1.15;color:var(--ic-text);margin:0 0 20px;}
.ic-page-lead{font-size:15px;line-height:1.6;color:var(--ic-muted);margin:-8px 0 22px;max-width:720px;}
.ic-card{background:var(--ic-card);border-radius:var(--ic-r-lg);box-shadow:var(--ic-shadow-card);padding:26px 28px;}
@media (max-width:767px){
  .ic-page-title{font-size:24px;}
  .ic-card{padding:20px 16px;}
}

/* ---- brand list ---- */
.ic-brand-index{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;margin:0 0 24px;}
.ic-brand-index a{display:inline-flex;flex-direction:row;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;
  border-radius:var(--ic-r);background:#fff;box-shadow:var(--ic-shadow-card);font-weight:700;font-size:14px;color:var(--ic-text);text-decoration:none;}
.ic-brand-index a:hover{background:var(--ic-magenta);color:#fff;}
.ic-brand-group{margin:0 0 18px;scroll-margin-top:130px;}
.ic-brand-group__letter{font-family:var(--ic-head);font-weight:800;font-size:22px;color:var(--ic-magenta);margin:0 0 10px;}
.ic-brand-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;}
.ic-brand-grid a{display:block;background:#fff;border-radius:var(--ic-r);box-shadow:var(--ic-shadow-card);padding:12px 14px;font-size:14.5px;
  font-weight:600;color:var(--ic-text);text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border:1px solid transparent;}
.ic-brand-grid a:hover{border-color:var(--ic-magenta);color:var(--ic-magenta);}
@media (max-width:575px){.ic-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}}

/* ---- contact ---- */
.ic-contact{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:22px;align-items:start;}
@media (max-width:991px){.ic-contact{grid-template-columns:1fr;}}
.ic-contact__info{display:flex;flex-direction:column;gap:18px;}
.ic-contact__row{display:flex;flex-direction:row;gap:14px;align-items:flex-start;}
.ic-contact__icon{flex:0 0 40px;height:40px;border-radius:50%;background:#F7E6F0;color:var(--ic-magenta);display:flex;flex-direction:row;
  align-items:center;justify-content:center;font-size:16px;}
.ic-contact__label{font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ic-muted);margin:0 0 3px;}
.ic-contact__value{font-size:15px;line-height:1.55;color:var(--ic-text);}
.ic-contact__value a{color:var(--ic-text);text-decoration:underline;text-decoration-color:rgba(170,7,107,.35);text-underline-offset:3px;}
.ic-contact__value a:hover{color:var(--ic-magenta);}
.ic-contact__about{font-size:14px;line-height:1.6;color:#4a4a52;border-top:1px solid var(--ic-line-soft);padding-top:16px;margin:0;}
.ic-form-title{font-family:var(--ic-head);font-weight:700;font-size:20px;color:var(--ic-text);margin:0 0 18px;}

/* ---- forms on these pages (styleguide 08) ---- */
#information-contact .form-label{font-size:14px;font-weight:600;color:var(--ic-text);margin-bottom:6px;}
#information-contact .form-control{min-height:44px;border:1px solid #E0E0E0;border-radius:var(--ic-r);font-size:15px;color:var(--ic-text);box-shadow:none;}
#information-contact textarea.form-control{min-height:150px;}
#information-contact .form-control:focus{border-color:var(--ic-magenta);box-shadow:0 0 0 3px rgba(170,7,107,.12);}
#information-contact .form-control.is-invalid{border-color:#E53935;background-color:#FFF5F5;}
#information-contact .invalid-feedback{color:#E53935;font-size:13px;}
/* the captcha block arrives with its own stock heading and horizontal label */
#information-contact fieldset legend{font-family:var(--ic-head);font-weight:700;font-size:16px;color:var(--ic-text);border:0;padding:0;margin:4px 0 10px;float:none;width:100%;}
#information-contact .row.mb-3 > .col-form-label,#information-contact .row.mb-3 > [class*="col-sm-"]{flex:0 0 100%;max-width:100%;text-align:left;}
#information-contact .row.mb-3 > .col-form-label{font-size:14px;font-weight:600;padding-top:0;padding-bottom:6px;}
.ic-form-foot{display:flex;flex-direction:row;justify-content:flex-end;margin-top:8px;}
@media (max-width:575px){.ic-form-foot .ic-btn{width:100%;}}

/* ---- 404 and success: one centred card ---- */
.ic-state{max-width:640px;margin:24px auto 0;text-align:center;padding:40px 32px;}
.ic-state__icon{width:72px;height:72px;border-radius:50%;margin:0 auto 18px;display:flex;flex-direction:row;align-items:center;justify-content:center;
  font-size:30px;background:#F7E6F0;color:var(--ic-magenta);}
.ic-state__icon--ok{background:#E7F6EE;color:var(--ic-avail);}
.ic-state__code{font-family:var(--ic-head);font-weight:800;font-size:64px;line-height:1;color:var(--ic-magenta);margin:0 0 8px;}
.ic-state h1{font-family:var(--ic-head);font-weight:800;font-size:26px;line-height:1.2;color:var(--ic-text);margin:0 0 10px;}
.ic-state__text{font-size:15px;line-height:1.6;color:#4a4a52;margin:0 auto 22px;max-width:480px;}
.ic-state__text p{margin:0 0 8px;}
.ic-state__text a{color:var(--ic-magenta);font-weight:600;}
.ic-state__search{display:flex;flex-direction:row;gap:8px;max-width:440px;margin:0 auto 22px;}
.ic-state__search input{flex:1;min-width:0;min-height:46px;border:1px solid #E0E0E0;border-radius:var(--ic-pill);padding:0 18px;font-size:15px;outline:0;}
.ic-state__search input:focus{border-color:var(--ic-magenta);box-shadow:0 0 0 3px rgba(170,7,107,.12);}
.ic-state__actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:10px;justify-content:center;}
.ic-state__links{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:center;margin:22px 0 0;padding-top:20px;border-top:1px solid var(--ic-line-soft);}
.ic-state__links a{font-size:14px;font-weight:600;color:var(--ic-text);background:var(--ic-page);border-radius:var(--ic-pill);padding:7px 14px;text-decoration:none;}
.ic-state__links a:hover{background:var(--ic-magenta);color:#fff;}
@media (max-width:575px){
  .ic-state{padding:30px 18px;}
  .ic-state__code{font-size:52px;}
  .ic-state__actions .ic-btn{width:100%;}
}

/* ---- sitemap ---- */
.ic-sitemap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;}
@media (max-width:991px){.ic-sitemap{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:575px){.ic-sitemap{grid-template-columns:1fr;}}
.ic-sitemap h2{font-family:var(--ic-head);font-weight:800;font-size:18px;margin:0 0 12px;}
.ic-sitemap h2 a{color:var(--ic-text);text-decoration:none;}
.ic-sitemap h2 a:hover{color:var(--ic-magenta);}
.ic-sitemap ul{list-style:none;margin:0;padding:0;}
.ic-sitemap li{margin:0;}
.ic-sitemap a{color:#3a3a40;text-decoration:none;font-size:14.5px;line-height:1.9;}
.ic-sitemap a:hover{color:var(--ic-magenta);}
.ic-sitemap .ic-sitemap__l2 > li > a{font-weight:700;color:var(--ic-text);}
.ic-sitemap .ic-sitemap__l3{padding-left:14px;border-left:2px solid #F7E6F0;margin:2px 0 8px;}
.ic-sitemap .ic-sitemap__l3 a{font-size:14px;line-height:1.8;}

/* Font Awesome glyphs used here (the bundle keeps the font but prunes unused glyph rules) */
.fa-location-dot::before{content:"\f3c5";}
.fa-phone::before{content:"\f095";}
.fa-envelope::before{content:"\f0e0";}
.fa-clock::before{content:"\f017";}
.fa-magnifying-glass::before{content:"\f002";}
.fa-circle-check::before{content:"\f058";}
.fa-compass::before{content:"\f14e";}
.ic-sitemap h2.ic-sitemap__gap{margin-top:22px;}
