/* ============================================================
   EARMOR — Brand Ambassador detail (single-earmor_ambassador.php)
   Design system: bg #0a0a0a / gold #F1B300 / white / honeycomb + slanted triangles
   ============================================================ */

/* Full-page background (diamond lattice removed). */
body {
    background-color:#0a0a0a;
}
.amb-page {
    background-color:transparent;
}

/* ---------- Kicker & section title ---------- */
.amb-kicker {
    display:inline-block; color:#F1B300; font-size:12px; font-weight:800;
    letter-spacing:4px; text-transform:uppercase; margin:0 0 14px;
}
.amb-section-title {
    color:#fff; font-size:clamp(30px,4vw,44px); font-weight:900; line-height:1.12;
    letter-spacing:.5px; margin:0 0 34px; text-transform:none;
}

/* ---------- Hero (full-bleed photo + left text + gold bottom slant) ---------- */
.amb-hero {
    position:relative; min-height:720px; display:flex; align-items:flex-end;
    background:#F1B300; overflow:hidden; isolation:isolate;
}
.amb-hero__media {
    position:absolute; inset:0; z-index:1;
    background-size:cover; background-position:center 25%;
    clip-path:polygon(0 0, 100% 0, 100% 88%, 0 100%);
}
.amb-hero__media::after {
    content:""; position:absolute; inset:0;
    background:linear-gradient(90deg, rgba(10,10,10,.78) 0%, rgba(10,10,10,.35) 35%, rgba(10,10,10,0) 55%),
               linear-gradient(180deg, rgba(10,10,10,.45) 0%, rgba(10,10,10,0) 40%, rgba(10,10,10,.55) 100%);
}
.amb-hero__tri--bl {
    position:absolute; left:0; bottom:0; width:100%; height:120px;
    background:#F1B300; opacity:.9;
    clip-path:polygon(0 100%, 100% 0, 100% 100%);
    z-index:2; pointer-events:none;
}
.amb-hero__inner {
    position:relative; z-index:3; width:min(1350px,100%); margin:0 auto;
    padding:180px 32px 150px;
}
.amb-hero__content { max-width:52%; }
.amb-hero__country {
    display:inline-block; color:#F1B300; font-size:13px; font-weight:900;
    letter-spacing:5px; text-transform:uppercase; margin:0 0 14px;
    padding-left:42px; position:relative;
}
.amb-hero__country::before {
    content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
    width:30px; height:2px; background:#F1B300;
}
.amb-hero__name {
    color:#fff; font-size:clamp(44px,7vw,84px); font-weight:900; line-height:1.0;
    letter-spacing:1px; text-transform:uppercase; margin:0 0 16px;
    text-shadow:0 2px 26px rgba(0,0,0,.65);
}
.amb-hero__role {
    color:#fff; font-size:clamp(18px,2.2vw,26px); font-weight:400;
    font-style:italic; margin:0 0 22px; letter-spacing:.5px;
}
.amb-hero__creds {
    list-style:none; margin:0; padding:0;
    color:rgba(255,255,255,.78); font-size:clamp(13px,1.4vw,16px);
    line-height:1.7; font-weight:500; letter-spacing:.3px;
}
.amb-hero__creds li { position:relative; padding-left:18px; }
.amb-hero__creds li::before {
    content:""; position:absolute; left:0; top:11px;
    width:6px; height:6px; background:#F1B300; border-radius:50%;
}

/* ---------- Achievements (design UI: left intro + right gold-framed card with icons) ---------- */
.amb-ach {
    position:relative; background:transparent; border-top:1px solid #161616;
    overflow:hidden; isolation:isolate;
}
.amb-ach__inner {
    position:relative; z-index:1; width:min(1350px,100%); margin:0 auto;
    padding:90px 32px 92px;
    display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); gap:64px;
    align-items:start;
}
.amb-ach__intro { max-width:460px; }
.amb-ach__label {
    display:inline-flex; align-items:center; gap:14px;
    color:#F1B300; font-size:12px; font-weight:800; letter-spacing:4px;
    text-transform:uppercase; margin:0 0 22px;
}
.amb-ach__label::before {
    content:""; display:block; width:36px; height:2px; background:#F1B300;
}
.amb-ach__disc { margin:0 0 15px; }
.amb-ach__disc-line1 {
    display:block; color:#F1B300; font-size:clamp(34px,4.2vw,52px); font-weight:600;
    line-height:1.05; letter-spacing:.5px; text-transform:uppercase;
}
.amb-ach__disc-line2 {
    display:block; color:#fff; font-size:clamp(34px,4.2vw,52px); font-weight:900;
    line-height:1.05; letter-spacing:.5px; text-transform:uppercase;
}
.amb-ach__intro p {
    color:#b8b8b8; font-size:15px; line-height:1.75; margin:0 0 5px;
}
.amb-ach__intro p:last-child { margin-bottom:0; }
.amb-ach__card {
    border:1px solid #F1B300; border-radius:16px; padding:5px 5px 5px;
    background:rgba(241,179,0,.03);
}
.amb-ach__item {
    display:grid; grid-template-columns:minmax(0,300px) 1fr;
    gap:30px; align-items:center;
    padding:10px 0; border-bottom:1px solid rgba(241,179,0,.22);
}
.amb-ach__item:first-child { padding-top:0; }
.amb-ach__item:last-child { padding-bottom:0; border-bottom:none; }
.amb-ach__left {
    display:flex; flex-direction:row; gap:14px; align-items:center;
    min-width:0;
}
.amb-ach__icon {
    flex:0 0 36px; width:36px; height:36px;
    display:flex; align-items:center; justify-content:center;
    color:#F1B300;
}
.amb-ach__icon svg { width:26px; height:26px; }
.amb-ach__title {
    color:#F1B300; font-size:clamp(15px,1.4vw,15px); font-weight:400;
    letter-spacing:1px; line-height:1.25; margin:0; text-transform:uppercase;
}
.amb-ach__details {
    display:flex; flex-direction:column; gap:5px;
    color:#b8b8b8; font-size:14px; line-height:1.55;
}
.amb-ach__details p { margin:0; }

/* ---------- Gallery ---------- */
.amb-gallery { background:transparent; border-top:1px solid #161616; }
.amb-gallery__inner { width:min(1350px,100%); margin:0 auto; padding:80px 32px 70px; }
.amb-gallery__grid {
    display:grid; grid-template-columns:repeat(3,1fr); grid-auto-rows:270px;
    gap:3px; margin-top:8px;
}
.amb-gallery__item {
    margin:0; overflow:hidden; background:#141414;
    border:1px solid #1d1d1d; height:100%;
    border-radius:10px;
}
.amb-gallery__item:first-child { grid-column:1; grid-row:span 2; }
.amb-gallery__item img {
    width:100%; height:100%; object-fit:cover; display:block;
    transition:transform .45s ease, filter .45s ease;
}
.amb-gallery__item:hover img { transform:scale(1.04); filter:brightness(1.06); }

/* ---------- Why EARMOR ---------- */
.amb-why { background:transparent; border-top:1px solid #161616; }
.amb-why__inner { width:min(1350px,100%); margin:0 auto; padding:80px 32px 90px; }
.amb-why__grid {
    display:grid; grid-template-columns:minmax(0,4fr) minmax(0,4fr) minmax(0,4fr);
    gap:10px; align-items:stretch; margin-top:10px;
}
.amb-why__card {
    background:#F1B300; color:#0a0a0a; padding:34px 30px 30px;
    display:flex; flex-direction:column;
    clip-path:polygon(0 0, 100% 0, 100% 100%, 26px 100%, 0 calc(100% - 26px));
}
.amb-why__card-kicker { color:#0a0a0a; font-size:11px; font-weight:800; letter-spacing:3px; margin:0 0 10px; opacity:.75; }
.amb-why__card-title { color:#0a0a0a; font-size:clamp(26px,3vw,38px); font-weight:900; letter-spacing:1px; margin:0 0 22px; }
.amb-why__features { list-style:none; margin:0; padding:0; }
.amb-why__features li {
    color:#0a0a0a; font-size:13px; font-weight:700; line-height:1.5;
    padding:9px 0 9px 22px; border-bottom:1px solid rgba(10,10,10,.18);
    position:relative;
}
.amb-why__features li:last-child { border-bottom:none; }
.amb-why__features li::before {
    content:""; position:absolute; left:0; top:50%; transform:translateY(-50%);
    width:10px; height:10px; background:#0a0a0a;
    clip-path:polygon(0 0, 100% 50%, 0 100%);
}
.amb-why__features { margin-bottom:20px; }
.amb-why__shop {
    display:inline-flex; align-items:center; gap:10px; margin-top:auto;
    padding:12px 24px; width:max-content;
    background:#0a0a0a; color:#F1B300;
    font-size:12px; font-weight:800; letter-spacing:2.5px; text-decoration:none;
    clip-path:polygon(0 0, 100% 0, 100% 100%, 10px 100%, 0 calc(100% - 10px));
    transition:background .2s ease, transform .2s ease;
}
.amb-why__shop:hover { background:#1c1c1c; transform:translateX(3px); }
.amb-why__shop .arr { display:inline-block; transition:transform .2s ease; }
.amb-why__shop:hover .arr { transform:translateX(4px); }
.amb-why__photo { margin:0; overflow:hidden; background:#141414; min-height:340px; }
.amb-why__photo img { width:100%; height:100%; object-fit:cover; display:block; }
.amb-why__product { position:relative; overflow:hidden; background:#141414; border:1px solid #1d1d1d; }
.amb-why__product-img { margin:0; height:100%; }
.amb-why__product-img img { width:100%; height:100%; object-fit:cover; display:block; }
.amb-why__product-name {
    position:absolute; left:0; right:0; bottom:0; z-index:1;
    color:#fff; font-size:17px; font-weight:600; line-height:1.35;
    padding:16px 20px; margin:0;
    text-shadow:0 2px 14px rgba(0,0,0,.65);
}

/* ---------- Full-width banner ---------- */
.amb-banner {
    min-height:520px; background-size:cover; background-position:center;
    border-top:1px solid #161616;
}

/* ---------- IPSC partner ---------- */
.amb-ipsc {
    position:relative; background:transparent; border-top:1px solid #222222;
    overflow:hidden; isolation:isolate;
}
.amb-ipsc::after {
    content:""; position:absolute; right:-40px; top:-30px; width:220px; height:220px;
    background:rgba(241,179,0,.10);
    clip-path:polygon(100% 0, 0 0, 100% 100%);
    z-index:0;
}
.amb-ipsc__inner {
    position:relative; z-index:1; width:min(900px,100%); margin:0 auto;
    padding:78px 24px 84px; text-align:center;
}
.amb-ipsc__title {
    color:#F1B300; font-size:clamp(30px,4.5vw,46px); font-weight:900;
    letter-spacing:5px; margin:0 0 26px; text-transform:uppercase;
}
.amb-ipsc__inner p {
    color:#b5b5b5; font-size:13px; line-height:1.75; margin:0 auto 12px; max-width:780px;
}

/* ---------- Ambassador collection page (hexagon grid) ---------- */
.amb-arch-hero { position:relative; padding:300px 0 150px; overflow:hidden; }
.amb-arch-hero__inner::after {
    content:""; display:block; width:64px; height:2px; background:#F1B300;
    margin:28px auto 0; opacity:.85;
}
.amb-arch-hero__inner { width:min(1350px,100%); margin:0 auto; padding:0 32px; text-align:center; }
.amb-arch-kicker {
    display:inline-block; color:#F1B300; font-size:13px; font-weight:900;
    letter-spacing:6px; text-transform:uppercase; padding:6px 14px; margin:0 0 16px;
    border:1px solid rgba(241,179,0,.6); background:rgba(241,179,0,.08);
    clip-path:polygon(0 0, 100% 0, 100% 100%, 0px 100%, 0 calc(100% - 8px));
}
.amb-arch-title {
    color:#fff; font-size:clamp(38px,6vw,72px); font-weight:900; line-height:1.02;
    letter-spacing:1px; text-transform:uppercase; margin:0 0 14px;
}
.amb-arch-sub { color:#e6e6e6; font-size:23px; line-height:1.7; max-width:720px; margin:0 auto; }
.amb-arch { padding:50px 0 100px; }
.amb-arch__inner { width:min(1350px,100%); margin:0 auto; padding:0 32px; }
/* Collection page: standard card grid (no hexagon masking) */
.amb-hexgrid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.amb-hex {
    display:block; text-decoration:none; text-align:left;
    border:1px solid #232323; border-radius:12px; overflow:hidden;
    background:#101010;
    transition:transform .35s ease, box-shadow .35s ease;
    will-change:transform;
}
.amb-hex:hover {
    transform:translateY(-4px);
    box-shadow:0 14px 34px rgba(0,0,0,.55);
}
.amb-hex__shape {
    display:block; position:relative; overflow:hidden; background:#141414;
    aspect-ratio:3/4;
}
.amb-hex__img {
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; object-position:center top;
    filter:brightness(.94) saturate(.98);
    transition:filter .45s ease, transform .55s ease;
}
.amb-hex:hover .amb-hex__img { filter:brightness(1.06) saturate(1); transform:scale(1.05); }
/* Branded empty-state placeholder (ambassador image not set yet) */
.amb-hex__ph {
    position:absolute; inset:0;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
    background:radial-gradient(circle at 50% 38%, #1c1c1c 0%, #0d0d0d 72%);
}
.amb-hex__ph::before {
    content:""; width:56px; height:56px; opacity:.7;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 56 56'%3E%3Cpolygon points='28,2 54,15 54,41 28,54 2,41 2,15' fill='rgba(241,179,0,0.05)' stroke='%23F1B300' stroke-opacity='0.5' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat;
}
.amb-hex__ph::after {
    content:"EARMOR"; color:rgba(241,179,0,.55); font-size:11px; font-weight:900; letter-spacing:3px;
}
.amb-hex__bar {
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    background:rgba(45,45,45,.78); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
    padding:40px 16px; position:absolute; left:0; right:0; bottom:0; z-index:2;
}
.amb-hex__txt { display:block; min-width:0; text-align:left; }
.amb-hex__name {
    display:block; color:#fff; font-size:20px; font-weight:500;
    letter-spacing:1px; text-transform:uppercase;
    white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
    transition:color .3s ease;
}
.amb-hex:hover .amb-hex__name { color:#F1B300; }
.amb-hex__role { display:block; color:#fff; font-size:18px; margin-top:3px; }
.amb-hex__role:empty { display:none; }
.amb-hex__arrow {
    flex:0 0 30px; width:30px; height:30px; border-radius:50%;
    display:flex; align-items:center; justify-content:center;
    border:1px solid rgba(255,255,255,.45); color:#fff; font-size:14px; line-height:1;
    transition:background .3s ease, border-color .3s ease, color .3s ease, transform .3s ease;
}
.amb-hex:hover .amb-hex__arrow {
    background:#F1B300; border-color:#F1B300; color:#0a0a0a; transform:translateX(3px);
}
.amb-arch__empty { color:#8a8a8a; text-align:center; padding:60px 0; }

/* ---------- Responsive ---------- */
@media (max-width:1099px) {
    .amb-hexgrid { grid-template-columns:repeat(3,1fr); gap:10px; }
    .amb-hero__media { clip-path:polygon(0 0, 100% 0, 100% 92%, 0 100%); }
    .amb-hero__content { max-width:100%; }
    .amb-hero__inner { padding:130px 24px 120px; }
    .amb-hero__tri--bl { height:80px; }
    .amb-why__grid { grid-template-columns:1fr 1fr; }
    .amb-gallery__grid { grid-template-columns:1fr 1fr; grid-auto-rows:240px; }
    .amb-gallery__grid .amb-gallery__item { grid-column:auto; grid-row:auto; }
    .amb-ach__inner { grid-template-columns:1fr; gap:40px; }
    .amb-ach__intro { max-width:none; }
    .amb-ach__card { padding:28px 26px; }
    .amb-ach__item { grid-template-columns:minmax(0,160px) 1fr; gap:22px; }
}
@media (max-width:680px) {
    .amb-hero { min-height:540px; }
    .amb-hero__inner { padding:110px 20px 100px; }
    .amb-hero__tri--bl { height:56px; }
    .amb-hero__creds li { padding-left:14px; }
    .amb-gallery__grid { grid-template-columns:1fr; grid-auto-rows:220px; }
    .amb-why__grid { grid-template-columns:1fr; }
    .amb-banner { min-height:320px; }
    .amb-hexgrid { grid-template-columns:repeat(3,1fr); gap:10px; }
    .amb-arch-hero { padding:100px 0 20px; }
    .amb-ach__inner { padding:60px 20px 62px; }
    .amb-ach__card { padding:22px 20px; }
    .amb-ach__item { grid-template-columns:1fr; gap:12px; padding:18px 0; }
    .amb-ach__left { flex-direction:row; align-items:center; gap:12px; }
    .amb-ach__icon { flex:0 0 36px; width:36px; height:36px; }
    .amb-ach__icon svg { width:26px; height:26px; }
}
@media (max-width:460px) {
    .amb-hexgrid { grid-template-columns:repeat(2,1fr); gap:10px; }
    .amb-arch-hero { padding:96px 0 30px; }
    .amb-arch__inner, .amb-arch-hero__inner { padding-left:20px; padding-right:20px; }
}
