/* ═══════════════════════════════════════════════
   Image Tools Pro — Main Stylesheet
   Version: 1.0.0
═══════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Clash+Display:wght@400;500;600;700&family=Epilogue:ital,wght@0,300;0,400;0,500;1,300&display=swap');

:root {
  --bg:      #f5f3ee;
  --bg2:     #edeae2;
  --dark:    #0f0e0b;
  --dark2:   #1e1c17;
  --text:    #0f0e0b;
  --muted:   #7a7668;
  --border:  #d8d4c8;
  --accent1: #ff4d00;  /* overridden by PHP dynamic CSS */
  --accent2: #6c47ff;  /* overridden by PHP dynamic CSS */
  --accent3: #00b37e;
  --white:   #ffffff;
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:'Epilogue',sans-serif; background:var(--bg); color:var(--text); overflow-x:hidden; line-height:1.6; }
a { text-decoration:none; color:inherit; }
img { max-width:100%; height:auto; display:block; }
ul { list-style:none; }
h1,h2,h3,h4,h5 { font-family:'Clash Display',sans-serif; font-weight:700; line-height:1.15; }
.screen-reader-text { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }

/* ── Container ── */
.itp-container { max-width:1200px; margin:0 auto; padding:0 24px; }

/* ══════════════════════════════════════════════
   NAVBAR
══════════════════════════════════════════════ */
.itp-nav {
  position:fixed; top:0; left:0; right:0; z-index:1000;
  background:rgba(245,243,238,0.9); backdrop-filter:blur(20px);
  border-bottom:1px solid var(--border);
}
.itp-nav__inner {
  display:flex; align-items:center; justify-content:space-between;
  height:68px; max-width:1200px; margin:0 auto; padding:0 24px;
}
.itp-nav__logo {
  display:flex; align-items:center; gap:10px;
  font-family:'Clash Display',sans-serif; font-size:1.2rem; font-weight:700; color:var(--dark);
}
.itp-nav__logo-dot { width:9px; height:9px; background:var(--accent1); border-radius:50%; flex-shrink:0; }
.itp-nav__logo-img { height:40px; width:auto; }
.itp-nav__links { display:flex; align-items:center; gap:8px; }
.itp-nav__btn { padding:9px 18px; border-radius:100px; font-size:0.82rem; font-weight:500; transition:all 0.2s; white-space:nowrap; display:inline-block; }
.itp-nav__btn--ghost { border:1px solid var(--border); color:var(--muted); }
.itp-nav__btn--ghost:hover { border-color:var(--dark); color:var(--dark); }
.itp-nav__btn--filled { background:var(--dark); color:#fff; border:1px solid var(--dark); }
.itp-nav__btn--filled:hover { background:var(--accent1); border-color:var(--accent1); }
.itp-nav__hamburger { display:none; flex-direction:column; gap:5px; background:none; border:none; padding:8px; cursor:pointer; }
.itp-nav__hamburger span { display:block; width:24px; height:2px; background:var(--dark); border-radius:2px; transition:all 0.3s; }

/* Mobile Nav */
.itp-mobile-nav { display:none; position:fixed; inset:0; z-index:999; background:rgba(15,14,11,0.97); padding:100px 32px 32px; flex-direction:column; gap:4px; }
.itp-mobile-nav.open { display:flex; }
.itp-mobile-nav a { color:white; font-size:1.4rem; font-family:'Clash Display',sans-serif; font-weight:700; padding:14px 0; border-bottom:1px solid rgba(255,255,255,0.07); }
.itp-mobile-nav a:last-child { border:none; }
.itp-mobile-nav__close { position:absolute; top:20px; right:24px; background:none; border:none; color:white; font-size:1.8rem; cursor:pointer; line-height:1; }

/* ══════════════════════════════════════════════
   HERO
══════════════════════════════════════════════ */
.itp-hero { min-height:100vh; padding:120px 24px 80px; display:flex; align-items:center; position:relative; overflow:hidden; background:var(--bg); }
.itp-hero__blob { position:absolute; border-radius:50%; pointer-events:none; filter:blur(90px); }
.itp-hero__blob--1 { width:600px; height:600px; background:radial-gradient(circle,rgba(255,77,0,0.09) 0%,transparent 70%); top:-120px; right:-100px; animation:itpFloat1 9s ease-in-out infinite; }
.itp-hero__blob--2 { width:400px; height:400px; background:radial-gradient(circle,rgba(108,71,255,0.08) 0%,transparent 70%); bottom:-80px; left:-80px; animation:itpFloat2 11s ease-in-out infinite; }
.itp-hero__inner { max-width:1200px; margin:0 auto; width:100%; display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; position:relative; z-index:1; }
.itp-hero__tag { display:inline-flex; align-items:center; gap:8px; background:white; border:1px solid var(--border); border-radius:100px; padding:6px 14px; font-size:0.74rem; font-weight:500; color:var(--muted); letter-spacing:0.5px; text-transform:uppercase; margin-bottom:22px; }
.itp-hero__ping { width:7px; height:7px; background:var(--accent3); border-radius:50%; position:relative; }
.itp-hero__ping::after { content:''; position:absolute; inset:-3px; border-radius:50%; border:1px solid var(--accent3); animation:itpPing 1.6s ease-out infinite; }
.itp-hero__title { font-size:clamp(3rem,5vw,4.8rem); font-weight:700; line-height:1.05; margin-bottom:20px; }
.itp-hero__title .line-orange { color:var(--accent1); display:block; }
.itp-hero__title .line-gradient { display:block; background:linear-gradient(90deg,var(--accent2),var(--accent1)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.itp-hero__sub { font-size:1rem; color:var(--muted); line-height:1.75; max-width:420px; margin-bottom:36px; }
.itp-hero__cta { display:flex; gap:12px; flex-wrap:wrap; }
.itp-hero__stats { display:flex; gap:32px; margin-top:48px; flex-wrap:wrap; }
.itp-stat__val { font-family:'Clash Display',sans-serif; font-size:1.9rem; font-weight:700; line-height:1; color:var(--accent1); }
.itp-stat__label { font-size:0.7rem; color:var(--muted); text-transform:uppercase; letter-spacing:0.5px; margin-top:4px; }

/* Hero Mockup */
.itp-hero__visual { position:relative; }
.itp-mockup { background:white; border:1px solid var(--border); border-radius:20px; padding:22px; box-shadow:0 20px 60px rgba(0,0,0,0.08); position:relative; z-index:1; }
.itp-mockup__bar { display:flex; gap:6px; margin-bottom:16px; }
.itp-mockup__dot { width:11px; height:11px; border-radius:50%; }
.itp-mockup__dot:nth-child(1){ background:#ff5f57; }
.itp-mockup__dot:nth-child(2){ background:#ffbd2e; }
.itp-mockup__dot:nth-child(3){ background:#28c941; }
.itp-mockup__drop { background:var(--bg); border:2px dashed var(--border); border-radius:14px; padding:28px; text-align:center; margin-bottom:14px; }
.itp-mockup__icon { font-size:2.2rem; margin-bottom:8px; }
.itp-mockup__drop strong { display:block; font-size:0.9rem; margin-bottom:4px; }
.itp-mockup__drop span { font-size:0.76rem; color:var(--muted); }
.itp-mockup__fmts { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:14px; }
.itp-mockup__fmt { background:var(--bg2); border:1px solid var(--border); border-radius:5px; padding:3px 9px; font-size:0.66rem; font-weight:600; color:var(--muted); }
.itp-mockup__slabel { display:flex; justify-content:space-between; font-size:0.72rem; color:var(--muted); margin-bottom:6px; }
.itp-mockup__slabel strong { color:var(--accent1); }
.itp-mockup__track { background:var(--bg2); border-radius:100px; height:5px; position:relative; margin-bottom:16px; }
.itp-mockup__fill { width:75%; height:100%; background:linear-gradient(90deg,var(--accent1),var(--accent2)); border-radius:100px; }
.itp-mockup__thumb { width:14px; height:14px; background:white; border:2px solid var(--accent1); border-radius:50%; position:absolute; top:50%; left:75%; transform:translate(-50%,-50%); box-shadow:0 2px 8px rgba(255,77,0,0.3); }
.itp-mockup__btn { display:block; width:100%; text-align:center; background:linear-gradient(135deg,var(--accent1),#ff7a35); color:white; border:none; border-radius:10px; padding:12px; font-family:'Clash Display',sans-serif; font-size:0.9rem; font-weight:600; }
.itp-float-badge { position:absolute; background:white; border:1px solid var(--border); border-radius:12px; padding:10px 14px; box-shadow:0 8px 24px rgba(0,0,0,0.08); font-size:0.75rem; font-weight:600; display:flex; align-items:center; gap:8px; }
.itp-float-badge--1 { top:-18px; right:-18px; animation:itpFloatBadge 3s ease-in-out infinite; }
.itp-float-badge--2 { bottom:60px; left:-28px; animation:itpFloatBadge 3s ease-in-out 1.2s infinite; }
.itp-float-badge__icon { font-size:1.1rem; }
.itp-float-badge__val { color:var(--accent3); font-family:'Clash Display',sans-serif; font-size:0.88rem; }
.itp-float-badge__sub { font-size:0.62rem; color:#999; }

/* ══════════════════════════════════════════════
   BUTTONS
══════════════════════════════════════════════ */
.itp-btn { display:inline-flex; align-items:center; gap:10px; padding:14px 28px; border-radius:100px; font-family:'Epilogue',sans-serif; font-size:0.9rem; font-weight:600; transition:all 0.25s; border:2px solid transparent; cursor:pointer; }
.itp-btn--primary { background:var(--accent1); color:white; border-color:var(--accent1); }
.itp-btn--primary:hover { background:transparent; color:var(--accent1); transform:translateY(-2px); box-shadow:0 8px 24px rgba(255,77,0,0.2); }
.itp-btn--secondary { background:transparent; color:var(--dark); border-color:var(--dark); }
.itp-btn--secondary:hover { background:var(--dark); color:white; transform:translateY(-2px); }

/* ══════════════════════════════════════════════
   SECTIONS
══════════════════════════════════════════════ */
.itp-section { padding:100px 24px; }
.itp-section--dark { background:var(--dark); }
.itp-section--light { background:var(--bg); }
.itp-section--gradient { background:linear-gradient(135deg,var(--dark),#1a1000); }

.itp-section-label { display:inline-flex; align-items:center; gap:8px; font-size:0.72rem; font-weight:600; letter-spacing:2px; text-transform:uppercase; color:var(--accent1); margin-bottom:14px; }
.itp-section-label::before { content:''; width:22px; height:1.5px; background:var(--accent1); }
.itp-section-label--purple { color:var(--accent2); }
.itp-section-label--purple::before { background:var(--accent2); }
.itp-section-title { font-size:clamp(2rem,4vw,3rem); font-weight:700; margin-bottom:16px; }
.itp-section-title--white { color:white; }
.itp-section-sub { font-size:1rem; color:var(--muted); max-width:520px; line-height:1.75; margin-bottom:56px; }
.itp-section-sub--dark { color:#6a6860; }

/* Dot background */
.itp-dotbg { position:relative; }
.itp-dotbg::before { content:''; position:absolute; inset:0; background-image:radial-gradient(rgba(255,77,0,0.07) 1px,transparent 1px); background-size:32px 32px; pointer-events:none; }
.itp-dotbg > * { position:relative; z-index:1; }

/* ══════════════════════════════════════════════
   TOOL CARDS
══════════════════════════════════════════════ */
.itp-tools-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.itp-tool-card { border-radius:24px; padding:40px; display:block; text-decoration:none; transition:all 0.3s ease; position:relative; overflow:hidden; border:1px solid transparent; }
.itp-tool-card::before { content:''; position:absolute; width:320px; height:320px; border-radius:50%; top:-120px; right:-100px; transition:transform 0.4s ease; pointer-events:none; }
.itp-tool-card:hover { transform:translateY(-6px); }
.itp-tool-card:hover::before { transform:scale(1.5); }
.itp-tool-card--compress { background:linear-gradient(135deg,#1a0a00,#2d1500); border-color:rgba(255,77,0,0.2); }
.itp-tool-card--compress::before { background:radial-gradient(circle,rgba(255,77,0,0.12) 0%,transparent 70%); }
.itp-tool-card--compress:hover { border-color:rgba(255,77,0,0.5); box-shadow:0 24px 60px rgba(255,77,0,0.14); }
.itp-tool-card--convert { background:linear-gradient(135deg,#0a0a1a,#100d2d); border-color:rgba(108,71,255,0.2); }
.itp-tool-card--convert::before { background:radial-gradient(circle,rgba(108,71,255,0.12) 0%,transparent 70%); }
.itp-tool-card--convert:hover { border-color:rgba(108,71,255,0.5); box-shadow:0 24px 60px rgba(108,71,255,0.14); }
.itp-tool-card__icon { width:60px; height:60px; border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:1.8rem; margin-bottom:24px; }
.itp-tool-card--compress .itp-tool-card__icon { background:rgba(255,77,0,0.15); border:1px solid rgba(255,77,0,0.2); }
.itp-tool-card--convert .itp-tool-card__icon { background:rgba(108,71,255,0.15); border:1px solid rgba(108,71,255,0.2); }
.itp-tool-card__title { font-size:1.5rem; font-weight:700; color:white; margin-bottom:12px; }
.itp-tool-card__desc { font-size:0.88rem; color:#7a7870; line-height:1.75; margin-bottom:24px; }
.itp-tool-card__formats { display:flex; gap:6px; flex-wrap:wrap; margin-bottom:20px; }
.itp-tool-card__fmt { background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.08); border-radius:6px; padding:3px 9px; font-size:0.64rem; font-weight:600; color:#7a7870; letter-spacing:0.5px; }
.itp-tool-card__features { display:flex; flex-direction:column; gap:9px; margin-bottom:32px; padding:0; }
.itp-tool-card__feat { display:flex; align-items:center; gap:10px; font-size:0.82rem; color:#a0a090; }
.itp-tool-card__feat-dot { width:5px; height:5px; border-radius:50%; flex-shrink:0; }
.itp-tool-card--compress .itp-tool-card__feat-dot { background:var(--accent1); }
.itp-tool-card--convert .itp-tool-card__feat-dot { background:var(--accent2); }
.itp-tool-card__cta { display:inline-flex; align-items:center; gap:8px; font-family:'Clash Display',sans-serif; font-size:0.9rem; font-weight:600; padding:12px 22px; border-radius:100px; transition:all 0.2s; border:1.5px solid; }
.itp-tool-card--compress .itp-tool-card__cta { color:var(--accent1); border-color:rgba(255,77,0,0.4); }
.itp-tool-card--compress:hover .itp-tool-card__cta { background:var(--accent1); color:white; border-color:var(--accent1); }
.itp-tool-card--convert .itp-tool-card__cta { color:#a080ff; border-color:rgba(108,71,255,0.4); }
.itp-tool-card--convert:hover .itp-tool-card__cta { background:var(--accent2); color:white; border-color:var(--accent2); }
.itp-tool-card__arrow { transition:transform 0.2s; }
.itp-tool-card:hover .itp-tool-card__arrow { transform:translateX(5px); }

/* ══════════════════════════════════════════════
   HOW IT WORKS
══════════════════════════════════════════════ */
.itp-how-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.itp-how-card { background:white; border:1px solid var(--border); border-radius:20px; padding:32px; position:relative; transition:all 0.3s; }
.itp-how-card:hover { transform:translateY(-5px); box-shadow:0 20px 40px rgba(0,0,0,0.06); }
.itp-how-card__num { font-family:'Clash Display',sans-serif; font-size:3.5rem; font-weight:700; color:var(--bg2); position:absolute; top:20px; right:24px; line-height:1; }
.itp-how-card__icon { font-size:2rem; margin-bottom:16px; }
.itp-how-card__title { font-size:1.1rem; font-weight:600; margin-bottom:10px; }
.itp-how-card__desc { font-size:0.85rem; color:var(--muted); line-height:1.7; }

/* ══════════════════════════════════════════════
   FEATURES STRIP
══════════════════════════════════════════════ */
.itp-features-grid { display:grid; grid-template-columns:repeat(4,1fr); max-width:1200px; margin:0 auto; }
.itp-feat-item { padding:40px 28px; border-left:1px solid rgba(255,255,255,0.05); transition:background 0.3s; }
.itp-feat-item:first-child { border-left:none; }
.itp-feat-item:hover { background:rgba(255,255,255,0.03); }
.itp-feat-item__icon { font-size:1.8rem; margin-bottom:12px; }
.itp-feat-item__title { font-family:'Clash Display',sans-serif; font-size:1rem; font-weight:600; color:white; margin-bottom:8px; }
.itp-feat-item__desc { font-size:0.78rem; color:#5a5850; line-height:1.6; }

/* ══════════════════════════════════════════════
   CTA
══════════════════════════════════════════════ */
.itp-cta__title { font-size:clamp(2.2rem,5vw,3.5rem); font-weight:700; line-height:1.1; margin-bottom:20px; }
.itp-cta__highlight { background:linear-gradient(90deg,var(--accent1),var(--accent2)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.itp-cta__sub { font-size:1rem; color:var(--muted); max-width:520px; margin:0 auto 40px; line-height:1.75; }
.itp-cta__btns { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; }

/* ══════════════════════════════════════════════
   TOOL PAGE
══════════════════════════════════════════════ */
.itp-tool-page { padding-top:68px; }
.itp-tool-hero { padding:60px 24px 0; text-align:center; background:var(--dark); position:relative; overflow:hidden; }
.itp-tool-hero__blob { position:absolute; border-radius:50%; filter:blur(80px); pointer-events:none; }
.itp-tool-hero__blob--1 { width:500px; height:500px; background:radial-gradient(circle,rgba(255,77,0,0.1) 0%,transparent 70%); top:-150px; left:50%; transform:translateX(-50%); }
.itp-tool-hero__inner { position:relative; z-index:1; max-width:700px; margin:0 auto; padding-bottom:40px; }
.itp-tool-hero__badge { display:inline-flex; align-items:center; gap:8px; background:rgba(255,77,0,0.15); border:1px solid rgba(255,77,0,0.3); border-radius:100px; padding:6px 16px; font-size:0.72rem; font-weight:600; color:var(--accent1); letter-spacing:1.5px; text-transform:uppercase; margin-bottom:20px; }
.itp-tool-hero__title { font-size:clamp(2rem,4vw,3.2rem); color:white; margin-bottom:16px; }
.itp-tool-hero__sub { color:#7a7870; font-size:0.95rem; line-height:1.75; margin-bottom:32px; }
.itp-tool-hero__formats { display:flex; gap:8px; justify-content:center; flex-wrap:wrap; }
.itp-tool-hero__fmt { background:rgba(255,255,255,0.07); border:1px solid rgba(255,255,255,0.1); border-radius:6px; padding:5px 12px; font-size:0.72rem; font-weight:600; color:#8a8880; letter-spacing:0.5px; }
.itp-tool-embed { background:white; border-radius:24px 24px 0 0; margin:0 24px; border:1px solid var(--border); border-bottom:none; overflow:hidden; }
.itp-tool-content { padding:60px 24px 80px; background:var(--bg); }
.itp-tool-content__inner { max-width:860px; margin:0 auto; }
.itp-content-section { margin-bottom:48px; }
.itp-content-section h2 { font-size:1.5rem; font-weight:700; margin-bottom:14px; color:var(--dark); }
.itp-content-section p { color:var(--muted); line-height:1.8; margin-bottom:14px; }

/* Steps */
.itp-steps { display:flex; flex-direction:column; gap:0; }
.itp-step { display:flex; gap:20px; padding:24px 0; border-bottom:1px solid var(--border); }
.itp-step:last-child { border-bottom:none; }
.itp-step__num { width:40px; height:40px; border-radius:50%; background:var(--accent1); color:white; display:flex; align-items:center; justify-content:center; font-family:'Clash Display',sans-serif; font-size:1rem; font-weight:700; flex-shrink:0; }
.itp-step__body h3 { font-size:1rem; font-weight:600; margin-bottom:6px; }
.itp-step__body p { font-size:0.88rem; color:var(--muted); line-height:1.7; margin:0; }

/* Feature pills */
.itp-feat-pills { display:grid; grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); gap:12px; margin-top:16px; }
.itp-feat-pill { background:white; border:1px solid var(--border); border-radius:12px; padding:16px; display:flex; align-items:flex-start; gap:12px; }
.itp-feat-pill__icon { font-size:1.3rem; flex-shrink:0; }
.itp-feat-pill__title { font-size:0.85rem; font-weight:600; margin-bottom:4px; }
.itp-feat-pill__desc { font-size:0.75rem; color:var(--muted); line-height:1.5; }

/* FAQ */
.itp-faq { display:flex; flex-direction:column; gap:12px; margin-top:16px; }
.itp-faq-item { background:white; border:1px solid var(--border); border-radius:14px; overflow:hidden; }
.itp-faq-item__q { padding:18px 20px; font-weight:600; font-size:0.92rem; cursor:pointer; display:flex; align-items:center; justify-content:space-between; gap:12px; user-select:none; }
.itp-faq-item__q::after { content:'+'; font-size:1.3rem; color:var(--accent1); flex-shrink:0; transition:transform 0.25s; }
.itp-faq-item.open .itp-faq-item__q::after { transform:rotate(45deg); }
.itp-faq-item__a { padding:0 20px; max-height:0; overflow:hidden; transition:max-height 0.35s ease, padding 0.35s; font-size:0.88rem; color:var(--muted); line-height:1.75; }
.itp-faq-item.open .itp-faq-item__a { max-height:300px; padding:0 20px 18px; }

/* Internal link banner */
.itp-internal-banner { border-radius:14px; padding:18px 22px; display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:14px; margin-top:40px; }
.itp-internal-banner--orange { background:#fff5f0; border-left:4px solid var(--accent1); }
.itp-internal-banner--purple { background:#f5f3ff; border-left:4px solid var(--accent2); }
.itp-internal-banner__text strong { display:block; font-size:0.9rem; margin-bottom:4px; }
.itp-internal-banner__text span { color:var(--muted); font-size:0.82rem; }
.itp-internal-banner__link { display:inline-flex; align-items:center; gap:6px; padding:10px 20px; border-radius:100px; font-size:0.82rem; font-weight:700; white-space:nowrap; transition:all 0.2s; color:white; }
.itp-internal-banner--orange .itp-internal-banner__link { background:var(--accent1); }
.itp-internal-banner--purple .itp-internal-banner__link { background:var(--accent2); }
.itp-internal-banner__link:hover { opacity:0.85; transform:translateY(-1px); }

/* ══════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════ */
.itp-footer { background:var(--dark2); border-top:1px solid rgba(255,255,255,0.05); padding:60px 24px 32px; }
.itp-footer__top { max-width:1200px; margin:0 auto; display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:48px; margin-bottom:48px; }
.itp-footer__logo { display:flex; align-items:center; gap:10px; font-family:'Clash Display',sans-serif; font-size:1.2rem; font-weight:700; color:white; margin-bottom:14px; }
.itp-footer__logo-dot { width:8px; height:8px; background:var(--accent1); border-radius:50%; }
.itp-footer__tagline { font-size:0.82rem; color:#5a5850; line-height:1.7; max-width:220px; }
.itp-footer__col-title { font-family:'Clash Display',sans-serif; font-size:0.78rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; color:#4a4840; margin-bottom:16px; }
.itp-footer__links { display:flex; flex-direction:column; gap:10px; }
.itp-footer__links a { font-size:0.84rem; color:#5a5850; transition:color 0.2s; }
.itp-footer__links a:hover { color:white; }
.itp-footer__bottom { max-width:1200px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; padding-top:28px; border-top:1px solid rgba(255,255,255,0.05); flex-wrap:wrap; gap:12px; }
.itp-footer__copy { font-size:0.76rem; color:#3a3830; }
.itp-footer__bottom-links { display:flex; gap:20px; }
.itp-footer__bottom-links a { font-size:0.76rem; color:#3a3830; transition:color 0.2s; }
.itp-footer__bottom-links a:hover { color:#7a7870; }

/* ══════════════════════════════════════════════
   ANIMATIONS & SCROLL REVEAL
══════════════════════════════════════════════ */
.itp-reveal { opacity:0; transform:translateY(28px); transition:opacity 0.7s ease, transform 0.7s ease; }
.itp-reveal.itp-visible { opacity:1; transform:translateY(0); }
.itp-reveal--d1 { transition-delay:0.1s; }
.itp-reveal--d2 { transition-delay:0.2s; }
.itp-reveal--d3 { transition-delay:0.3s; }

.itp-anim-fadeup { animation:itpFadeUp 0.6s ease both; }
.itp-anim-fadeup--d1 { animation-delay:0.1s; }
.itp-anim-fadeup--d2 { animation-delay:0.2s; }
.itp-anim-fadeup--d3 { animation-delay:0.3s; }
.itp-anim-fadeup--d4 { animation-delay:0.4s; }

@keyframes itpFloat1 { 0%,100%{transform:translate(0,0);} 50%{transform:translate(-18px,18px);} }
@keyframes itpFloat2 { 0%,100%{transform:translate(0,0);} 50%{transform:translate(18px,-18px);} }
@keyframes itpFloatBadge { 0%,100%{transform:translateY(0);} 50%{transform:translateY(-8px);} }
@keyframes itpPing { 0%{transform:scale(1);opacity:0.8;} 100%{transform:scale(2.5);opacity:0;} }
@keyframes itpFadeUp { from{opacity:0;transform:translateY(24px);} to{opacity:1;transform:translateY(0);} }

/* ══════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════ */
@media (max-width:1024px) {
  .itp-footer__top { grid-template-columns:1fr 1fr; gap:32px; }
  .itp-features-grid { grid-template-columns:1fr 1fr; }
  .itp-feat-item { border-left:none; border-top:1px solid rgba(255,255,255,0.05); }
  .itp-feat-item:first-child, .itp-feat-item:nth-child(2) { border-top:none; }
}
@media (max-width:768px) {
  .itp-hero__inner { grid-template-columns:1fr; }
  .itp-hero__visual { display:none; }
  .itp-tools-grid { grid-template-columns:1fr; }
  .itp-how-grid { grid-template-columns:1fr; }
  .itp-nav__links { display:none; }
  .itp-nav__hamburger { display:flex; }
  .itp-section { padding:60px 20px; }
  .itp-footer__top { grid-template-columns:1fr; gap:24px; }
  .itp-features-grid { grid-template-columns:1fr 1fr; }
  .itp-tool-embed { margin:0; border-radius:0; }
  .itp-tool-content { padding:40px 20px 60px; }
}
@media (max-width:480px) {
  .itp-hero { padding:100px 20px 60px; }
  .itp-features-grid { grid-template-columns:1fr; }
  .itp-feat-item { border-top:1px solid rgba(255,255,255,0.05); border-left:none; }
  .itp-feat-item:first-child { border-top:none; }
  .itp-hero__cta { flex-direction:column; }
  .itp-btn { justify-content:center; }
  .itp-cta__btns { flex-direction:column; align-items:center; }
  .itp-internal-banner { flex-direction:column; }
}
