/*
Theme Name: Summersky
Theme URI: https://ivansummersky.com
Author: Ivan Summersky
Description: Schlankes WooCommerce-Theme für Ivan Summersky – Ignorant Art aus Trier. Palette Türkis & Bubblegum, harte Kanten, kein Bullshit.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: summersky
WC requires at least: 6.0
*/

:root{
  --mint:#D3F0EA;
  --pink:#FF9EC6;
  --pinkdeep:#E0508F;
  --ink:#201C26;
  --paper:#FFFDFB;
  --fire:#FF5A1F;
  --sky:#7FC8E8;
  --gold:#E8B23A;

  --display:'Anton', Impact, sans-serif;
  --body:'Inter', system-ui, sans-serif;
  --mono:'Space Mono', monospace;

  --maxw:1180px;
  --gut:clamp(20px,5vw,64px);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--body);
  color:var(--ink);
  background:var(--mint);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}

.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gut)}

.eyebrow{
  font-family:var(--mono);
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--pinkdeep);
  font-weight:700;
}

/* ---------- HEADER ---------- */
header.site{
  position:sticky;top:0;z-index:50;
  background:var(--mint);
  border-bottom:3px solid var(--ink);
}
.bar{
  display:flex;align-items:center;justify-content:space-between;
  height:64px;
}
.brand{
  font-family:var(--display);
  font-size:1.45rem;
  letter-spacing:.04em;
  text-transform:uppercase;
}
nav.main ul{display:flex;gap:28px;list-style:none;align-items:center;margin:0;padding:0}
nav.main a{
  font-family:var(--mono);font-size:.82rem;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;
  padding:4px 0;border-bottom:2px solid transparent;transition:border-color .15s;
}
nav.main a:hover{border-color:var(--pinkdeep)}
.cart{
  font-family:var(--mono);font-size:.82rem;font-weight:700;
  background:var(--ink);color:var(--paper);padding:8px 14px;
}
.cart:hover{background:var(--pinkdeep)}
.burger{display:none;background:none;border:0;cursor:pointer;font-size:1.6rem;line-height:1;color:var(--ink)}

/* ---------- HERO ---------- */
.hero{padding:clamp(48px,9vw,104px) 0 0}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,4vw,56px);align-items:center}
.hero h1{
  font-family:var(--display);
  font-size:clamp(3rem,9.5vw,7rem);
  line-height:.92;letter-spacing:.01em;text-transform:uppercase;
  margin:.35em 0 .45em;
}
.hero h1 .hl{color:var(--pinkdeep)}
.hero .lede{font-size:1.12rem;max-width:30ch;margin-bottom:28px;color:#3a343f}
.cta-row{display:flex;flex-wrap:wrap;gap:14px}
.btn{
  font-family:var(--mono);font-weight:700;font-size:.85rem;
  letter-spacing:.06em;text-transform:uppercase;
  padding:14px 22px;border:3px solid var(--ink);
  transition:transform .12s, box-shadow .12s;display:inline-block;
}
.btn-primary{background:var(--ink);color:var(--paper);box-shadow:5px 5px 0 var(--pinkdeep)}
.btn-ghost{background:var(--paper);color:var(--ink);box-shadow:5px 5px 0 var(--ink)}
.btn:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--pinkdeep)}
.btn-ghost:hover{box-shadow:7px 7px 0 var(--ink)}

.hero-art{
  aspect-ratio:4/5;border:4px solid var(--ink);
  background:
    linear-gradient(135deg,var(--fire) 0 40%,transparent 40%),
    radial-gradient(circle at 70% 65%,var(--gold) 0 18%,transparent 18%),
    var(--pink);
  position:relative;overflow:hidden;
}
.hero-art img{width:100%;height:100%;object-fit:cover}
.hero-art .tag{
  position:absolute;bottom:14px;left:14px;
  font-family:var(--mono);font-size:.7rem;font-weight:700;
  background:var(--paper);color:var(--ink);padding:6px 10px;letter-spacing:.06em;
}

/* ---------- STATEMENT MARQUEE (Signature) ---------- */
.band{background:var(--pinkdeep);border-block:3px solid var(--ink);overflow:hidden;margin-top:clamp(48px,8vw,96px)}
.marquee{display:flex;white-space:nowrap;will-change:transform;animation:scroll 22s linear infinite}
.marquee span{
  font-family:var(--display);font-size:clamp(1.8rem,5vw,3.2rem);
  text-transform:uppercase;color:var(--paper);padding:14px 0;letter-spacing:.02em;
}
.marquee span::after{content:"·";padding:0 .5em;color:var(--pink)}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee{animation:none;justify-content:center}}

/* ---------- SECTIONS ---------- */
.sec{padding:clamp(56px,9vw,104px) 0}
.sec-head{display:flex;align-items:baseline;gap:18px;margin-bottom:36px;flex-wrap:wrap}
.sec-head h2{font-family:var(--display);font-size:clamp(2rem,6vw,3.4rem);text-transform:uppercase;line-height:1}

/* ---------- WORKS GRID ---------- */
.works{display:grid;gap:18px;grid-template-columns:repeat(3,1fr);grid-auto-rows:200px}
.card{
  border:3px solid var(--ink);position:relative;overflow:hidden;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:20px;transition:transform .14s, box-shadow .14s;color:var(--ink);
}
.card:hover{transform:translate(-3px,-3px);box-shadow:8px 8px 0 var(--ink)}
.card .k-title{font-family:var(--display);font-size:1.9rem;text-transform:uppercase;line-height:.95}
.card .k-meta{font-family:var(--mono);font-size:.72rem;font-weight:700;letter-spacing:.06em;margin-top:6px}
.c-burn{grid-column:span 2;grid-row:span 2;background:var(--fire);color:var(--paper)}
.c-burn .k-meta{color:#ffe1d4}
.c-burn .k-title{font-size:clamp(2.4rem,6vw,4rem)}
.c-white{background:var(--sky)}
.c-flitzer{background:var(--gold)}
.c-hearts{grid-column:span 2;background:var(--pink)}
.c-b2r{background:var(--ink);color:var(--paper)}
.c-b2r .k-meta{color:var(--pink)}

/* ---------- ABOUT ---------- */
.about{background:var(--paper);border-block:3px solid var(--ink)}
.about-inner{display:grid;grid-template-columns:1fr 1.3fr;gap:clamp(24px,5vw,64px);align-items:center;padding-block:clamp(56px,9vw,96px)}
.about-art{aspect-ratio:1;border:4px solid var(--ink);background:repeating-linear-gradient(45deg,var(--pinkdeep) 0 22px,var(--pink) 22px 44px)}
.about-art img{width:100%;height:100%;object-fit:cover}
.about h2{font-family:var(--display);font-size:clamp(2rem,6vw,3.4rem);text-transform:uppercase;line-height:1;margin:.25em 0 .5em}
.about p{font-size:1.08rem;margin-bottom:14px;max-width:46ch}

/* ---------- NEWSLETTER ---------- */
.news{background:var(--ink);color:var(--paper)}
.news-inner{padding-block:clamp(56px,9vw,96px);text-align:center}
.news h2{font-family:var(--display);font-size:clamp(2.2rem,7vw,4rem);text-transform:uppercase;line-height:.98;margin-bottom:14px}
.news p{color:#c9c4cf;max-width:46ch;margin:0 auto 28px}
.news-form{display:flex;gap:0;max-width:480px;margin-inline:auto;flex-wrap:wrap;justify-content:center}
.news-form input{flex:1 1 240px;font-family:var(--body);font-size:1rem;padding:15px 16px;border:3px solid var(--paper);background:var(--paper);color:var(--ink)}
.news-form button{font-family:var(--mono);font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:15px 24px;border:3px solid var(--pinkdeep);background:var(--pinkdeep);color:var(--paper);cursor:pointer}
.news-form button:hover{background:var(--pink);border-color:var(--pink);color:var(--ink)}
.news small{display:block;color:#8f8a96;margin-top:16px;font-size:.78rem}
.news a{color:var(--pink);text-decoration:underline}

/* ---------- FOOTER ---------- */
footer.site{background:var(--mint);border-top:3px solid var(--ink);padding-block:40px}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;align-items:center}
.f-brand{font-family:var(--display);font-size:1.3rem;text-transform:uppercase}
.f-links ul{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:0}
.f-links a{font-family:var(--mono);font-size:.74rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.f-links a:hover{color:var(--pinkdeep)}
.copy{font-family:var(--mono);font-size:.72rem;color:#5a5560;width:100%}

a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--pinkdeep);outline-offset:2px}

/* ---------- WOOCOMMERCE (Shop-Seiten erben den Look) ---------- */
.woo-wrap{padding-block:clamp(40px,7vw,80px)}
.woocommerce-page h1,.woocommerce-page h2{font-family:var(--display);text-transform:uppercase}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  font-family:var(--mono);font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  background:var(--ink);color:var(--paper);border:3px solid var(--ink);border-radius:0;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--pinkdeep);border-color:var(--pinkdeep)}
.woocommerce span.price,.woocommerce ins{color:var(--pinkdeep);font-weight:700}

/* ---------- RESPONSIVE ---------- */
@media (max-width:820px){
  .burger{display:block}
  nav.main{display:none;position:absolute;top:64px;left:0;right:0;background:var(--mint);border-bottom:3px solid var(--ink);padding:8px var(--gut) 18px}
  nav.main.open{display:block}
  nav.main ul{flex-direction:column;gap:4px;align-items:flex-start}
  nav.main a{display:block;padding:10px 0}
  .hero-grid{grid-template-columns:1fr}
  .hero-art{max-width:380px;order:-1}
  .works{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}
  .c-burn .k-title{font-size:2.2rem}
  .about-inner{grid-template-columns:1fr}
  .about-art{max-width:320px}
}
@media (max-width:520px){
  .works{grid-template-columns:1fr;grid-auto-rows:150px}
  .c-burn,.c-hearts{grid-column:span 1}
  .c-burn{grid-row:span 1}
  .cart{display:none}
}
