/* === home.css — Home page only (hero slider, authorized strip, about, resources) === */
/* CHANGE LOG: added the "Company Profile / Resources" download section styles
   (.profiles / .profile-card) at the end of this file — placed after the About
   section in index.html, matching the ICOM identity (red accents, hairline borders). */

/* ---- Hero editorial slider (ICOM banner style) ---- */
.hero{ position:relative; margin-top:var(--header-h); height:clamp(440px,64vh,600px); overflow:hidden; background:var(--gray); }
.hero__slide{ position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity var(--t-slow); }
.hero__slide.active{ opacity:1; visibility:visible; }
.hero__bg{ position:absolute; inset:0; background-size:cover; background-position:center; transform:scale(1.04); }
.hero__slide.active .hero__bg{ animation:kb 7s ease forwards; }
@keyframes kb{ to{ transform:scale(1.1); } }
.hero__scrim{ position:absolute; inset:0; background:linear-gradient(95deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.9) 32%, rgba(255,255,255,.55) 58%, rgba(255,255,255,0) 86%); }
@media (max-width:700px){ .hero__scrim{ background:linear-gradient(180deg, rgba(255,255,255,.95) 30%, rgba(255,255,255,.7) 100%); } }
.hero__content{ position:relative; z-index:2; height:100%; display:flex; align-items:center; }
.hero__inner{ max-width:33rem; }
.hero__cap{ font-size:.8rem; font-weight:700; letter-spacing:.14em; text-transform:uppercase; color:var(--red); margin-bottom:.85rem; }
.hero h1{ font-size:clamp(2rem,5.5vw,3.4rem); font-weight:900; color:var(--ink); letter-spacing:-.02em; line-height:1.08; }
.hero__tag{ font-style:italic; font-size:clamp(1.05rem,2.6vw,1.5rem); color:var(--ink-soft); margin:.55rem 0 1rem; }
.hero__desc{ color:var(--ink-soft); margin-bottom:1.8rem; max-width:30rem; }
.hero__actions{ display:flex; flex-wrap:wrap; gap:.85rem; }
.hero__slide.active .hero__inner>*{ animation:up .6s ease backwards; }
.hero__slide.active .hero__cap{ animation-delay:.1s; }
.hero__slide.active h1{ animation-delay:.2s; }
.hero__slide.active .hero__tag{ animation-delay:.3s; }
.hero__slide.active .hero__desc{ animation-delay:.4s; }
.hero__slide.active .hero__actions{ animation-delay:.5s; }
@keyframes up{ from{ opacity:0; transform:translateY(22px); } to{ opacity:1; transform:none; } }
.hero__arrow{ position:absolute; top:50%; transform:translateY(-50%); z-index:3; width:46px; height:60px; background:rgba(40,40,40,.55); color:#fff; display:flex; align-items:center; justify-content:center; transition:background var(--t); }
.hero__arrow:hover{ background:var(--red); }
.hero__arrow.prev{ left:0; } .hero__arrow.next{ right:0; }
@media (max-width:700px){ .hero__arrow{ width:36px; height:48px; } }
.hero__dots{ position:absolute; bottom:1.3rem; left:50%; transform:translateX(-50%); z-index:3; display:flex; gap:.5rem; }
.hero__dots button{ width:10px; height:10px; border-radius:50%; background:rgba(40,40,40,.3); transition:all var(--t); }
.hero__dots button.active{ background:var(--red); width:26px; border-radius:6px; }

/* ---- Authorized distributor strip ---- */
.authstrip{ background:var(--ink); color:#fff; }
.authstrip__in{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:1rem 2.5rem; padding:1.1rem 0; text-align:center; }
.authstrip__badge{ display:inline-flex; align-items:center; gap:.7rem; font-weight:700; letter-spacing:.03em; }
.authstrip__badge .icom-word{ color:#fff; }
.authstrip__tag{ background:var(--red); color:#fff; font-size:.72rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; padding:.3rem .8rem; border-radius:var(--r); }
.authstrip p{ color:#cfcfcf; font-size:.9rem; }

/* ---- Product preview grid + category cards ---- */
.pgrid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:1.5rem; }
.catgrid{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
@media (min-width:768px){ .catgrid{ grid-template-columns:repeat(3,1fr); } }
.solgrid,.projgrid{ display:grid; grid-template-columns:1fr; gap:1.5rem; }
@media (min-width:768px){ .solgrid{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:640px){ .projgrid{ grid-template-columns:repeat(2,1fr); } }
@media (min-width:1000px){ .projgrid{ grid-template-columns:repeat(3,1fr); } }

/* ---- About + contact grids on home ---- */
.about{ display:grid; grid-template-columns:1fr; gap:3.5rem; align-items:center; }
@media (min-width:1000px){ .about{ grid-template-columns:1fr 1fr; } }
.about h2{ font-size:clamp(1.7rem,4vw,2.3rem); font-weight:500; margin:.5rem 0 1.3rem; }
.about p{ color:var(--ink-soft); margin-bottom:1rem; }
.about__badge{ display:flex; align-items:center; gap:1rem; padding:1.1rem; background:var(--gray); border-left:3px solid var(--red); border-radius:var(--r); margin-top:1.8rem; }
.about__badge .mark{ display:flex; align-items:center; gap:.4rem; }
.about__badge b{ font-size:.88rem; color:var(--ink); }
.about__badge span{ font-size:.78rem; color:var(--ink-soft); }
.contact{ display:grid; grid-template-columns:1fr; gap:2.5rem; }
@media (min-width:1000px){ .contact{ grid-template-columns:3fr 2fr; } }
.cinfo{ display:grid; gap:1.2rem; align-content:start; }

/* ---- Company Profile / Resources download section ---- */
.profiles{ background:linear-gradient(180deg, var(--gray) 0%, var(--white) 100%); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.profiles__grid{ display:grid; grid-template-columns:1fr; gap:1.5rem; max-width:30rem; margin-inline:auto; }
@media (min-width:680px){ .profiles__grid.is-multi{ grid-template-columns:repeat(2,1fr); max-width:48rem; } }

.profile-card{ position:relative; background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:2.25rem 2rem; text-align:center; overflow:hidden; transition:box-shadow var(--t), transform var(--t); }
.profile-card::before{ content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--red); }
.profile-card:hover{ box-shadow:var(--sh-2); transform:translateY(-4px); }
.profile-card__icon{ display:inline-flex; color:var(--red); margin-bottom:1.1rem; transition:transform var(--t); }
.profile-card:hover .profile-card__icon{ transform:scale(1.05); }
.profile-card__title{ font-size:1.2rem; font-weight:700; color:var(--ink); margin-bottom:.5rem; }
.profile-card__desc{ font-size:.9rem; color:var(--ink-soft); margin-bottom:.8rem; }
.profile-card__meta{ font-family:var(--mono); font-size:.74rem; color:var(--ink-faint); text-transform:uppercase; letter-spacing:.06em; margin-bottom:1.4rem; }
.profile-card__btn{ display:inline-flex; align-items:center; gap:.5rem; padding:.7rem 1.7rem; border:1px solid var(--red); border-radius:var(--r); font-size:.88rem; font-weight:500; color:var(--red); background:transparent; transition:all var(--t); }
.profile-card__btn svg{ transition:transform var(--t); }
.profile-card__btn:hover{ background:var(--red); color:#fff; }
.profile-card__btn:hover svg{ transform:translateY(2px); }
