/* ======================================================================
   TATTOBYBASTI — BOTANICAL LIGHT THEME
   Design basis: supplied “Bei Basti Tattoos” homepage visual.
   ====================================================================== */
:root{
  --tbb-olive:#637640;
  --tbb-olive-dark:#35442b;
  --tbb-olive-soft:#dfe3c9;
  --tbb-cream:#eeebd8;
  --tbb-cream-2:#f6f2e3;
  --tbb-sand:#e4dfca;
  --tbb-ink:#35402f;
  --tbb-muted:#69705f;
  --tbb-line:rgba(75,89,59,.17);
  --tbb-shadow:0 20px 55px rgba(65,75,50,.13);
  --tbb-script:"Segoe Script","Brush Script MT","Bradley Hand",cursive;
  --tbb-serif:Georgia,"Times New Roman",serif;
}

html{background:var(--tbb-cream);color-scheme:light}
body,
body.inkerella-site{
  margin:0;
  background:
    radial-gradient(circle at 10% 16%,rgba(160,173,126,.22),transparent 19%),
    radial-gradient(circle at 88% 64%,rgba(175,185,140,.18),transparent 23%),
    linear-gradient(180deg,#f1eedc 0%,#ebe8d5 100%);
  color:var(--tbb-ink);
  font-family:var(--font-body,"Segoe UI",Arial,sans-serif);
  line-height:1.55;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-2;
  pointer-events:none;
  background-image:
    radial-gradient(circle at 16% 12%,rgba(97,116,63,.08),transparent 20%),
    radial-gradient(circle at 85% 28%,rgba(97,116,63,.06),transparent 24%),
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.045'/%3E%3C/svg%3E");
}
body::after{display:none!important}
.site-shell{overflow:clip}
.container{width:min(calc(100% - 42px),1240px)}
a{color:inherit}
.skip-link{background:var(--tbb-olive);color:white;border-radius:999px}

/* Botanical ornaments assembled from pure CSS/SVG-like line art */
.site-shell::before,
.site-shell::after{
  content:"";
  position:fixed;
  z-index:-1;
  width:clamp(220px,30vw,500px);
  aspect-ratio:1;
  pointer-events:none;
  opacity:.30;
  filter:saturate(.8);
  background:
    radial-gradient(ellipse at 20% 50%,rgba(76,101,52,.78) 0 10%,transparent 11%),
    radial-gradient(ellipse at 39% 28%,rgba(94,119,68,.7) 0 12%,transparent 13%),
    radial-gradient(ellipse at 56% 53%,rgba(60,91,47,.75) 0 13%,transparent 14%),
    radial-gradient(ellipse at 76% 31%,rgba(106,128,78,.68) 0 11%,transparent 12%);
  transform:rotate(-28deg);
}
.site-shell::before{left:-10%;top:8%}
.site-shell::after{right:-13%;bottom:3%;transform:rotate(148deg);opacity:.24}

/* ----------------------------------------------------------------------
   Header / off-canvas menu
   ---------------------------------------------------------------------- */
.ink-topbar{display:none!important}
.site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:rgba(241,238,220,.89)!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.site-header::after{height:1px;background:linear-gradient(90deg,transparent,rgba(69,82,52,.18),transparent);opacity:1}
.site-header__ornament{display:none!important}
.header__inner{min-height:114px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{min-width:0!important;display:flex;align-items:center;gap:0}
.brand__mark{
  width:clamp(220px,29vw,350px)!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
  box-shadow:none!important;
}
.brand__mark img{width:100%;height:auto;object-fit:contain;mix-blend-mode:multiply}
.brand__text{display:none!important}
.nav-toggle{
  display:flex!important;
  width:74px;
  height:74px;
  margin-left:auto;
  padding:0;
  justify-content:center;
  border:0!important;
  border-radius:50%;
  background:rgba(247,244,229,.88)!important;
  color:var(--tbb-ink)!important;
  box-shadow:0 10px 30px rgba(68,78,54,.09);
}
.nav-toggle>span:last-child{display:none}
.nav-toggle__bars{display:grid;gap:8px;width:35px}
.nav-toggle__bars i{display:block;height:1.5px;background:var(--tbb-ink)!important;border-radius:5px}
.nav-toggle:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(68,78,54,.14)}
.main-nav{
  position:fixed!important;
  inset:0 0 0 auto!important;
  z-index:1100!important;
  width:min(470px,100vw)!important;
  margin:0!important;
  padding:0 28px 30px!important;
  display:flex!important;
  flex-direction:column;
  align-items:stretch!important;
  gap:18px!important;
  overflow:auto;
  background:
    radial-gradient(circle at 90% 8%,rgba(118,140,78,.24),transparent 30%),
    linear-gradient(180deg,#f5f1df,#e8e5d0)!important;
  box-shadow:-25px 0 70px rgba(49,57,39,.22)!important;
  transform:translateX(105%);
  visibility:hidden;
  transition:transform .34s ease,visibility .34s ease;
}
.main-nav.is-open{transform:none;visibility:visible}
.main-nav__mobile-head{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  min-height:112px;
  border-bottom:1px solid var(--tbb-line);
}
.main-nav__mobile-head span{display:block;color:var(--tbb-muted);font-size:.64rem;font-weight:800;letter-spacing:.22em}
.main-nav__mobile-head strong{font-family:var(--tbb-serif);font-size:2rem;font-weight:500;color:var(--tbb-ink)}
.main-nav__close{
  width:52px;height:52px;border:1px solid var(--tbb-line);border-radius:50%;background:rgba(255,255,255,.34);font-size:1.9rem;color:var(--tbb-ink);cursor:pointer
}
.main-nav__list{display:grid!important;gap:8px!important;width:100%}
.nav-item{width:100%}
.nav-item__row{display:flex;border:0!important;background:rgba(248,245,232,.72);border-radius:22px;box-shadow:0 10px 25px rgba(65,75,50,.07)}
.nav-link{
  min-height:58px!important;
  flex:1;
  padding:0 20px!important;
  color:var(--tbb-ink)!important;
  font-family:var(--font-body)!important;
  font-size:.88rem!important;
  font-weight:700;
  letter-spacing:.12em!important;
  text-transform:uppercase;
}
.nav-link::after{left:20px!important;right:auto!important;bottom:10px!important;width:36px;height:1px!important;background:var(--tbb-olive)!important}
.nav-link:hover,.nav-link.is-active{color:var(--tbb-olive-dark)!important}
.nav-expand{width:58px;height:58px;margin:0!important;border:0!important;border-left:1px solid var(--tbb-line)!important;color:var(--tbb-olive-dark)!important;background:transparent!important}
.nav-dropdown{
  position:static!important;
  min-width:0!important;
  margin:6px 0 4px 14px;
  padding:6px!important;
  display:none;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.nav-item.is-open .nav-dropdown{display:grid!important}
.nav-dropdown a{border:0!important;padding:10px 14px!important;border-radius:14px;color:var(--tbb-muted)!important;background:rgba(255,255,255,.28)}
.nav-dropdown a:hover{background:rgba(99,118,64,.12)!important;color:var(--tbb-olive-dark)!important}
.nav-cta{width:100%;margin-top:auto!important}
body.nav-open::before{content:"";position:fixed;inset:0;z-index:1050;background:rgba(42,49,35,.36);backdrop-filter:blur(3px)}

/* ----------------------------------------------------------------------
   Type, buttons, common surfaces
   ---------------------------------------------------------------------- */
.button-row{gap:14px;margin-top:30px}
.button{
  min-height:58px;
  padding:14px 28px;
  border:0!important;
  border-radius:999px!important;
  clip-path:none!important;
  font-family:var(--font-body)!important;
  font-size:.78rem;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
  box-shadow:0 14px 28px rgba(72,85,55,.12);
}
.button::before{display:none!important}
.button--primary,.button--light{background:linear-gradient(135deg,#71874b,#566b37)!important;color:white!important}
.button--outline,.button--ghost{background:rgba(248,245,232,.62)!important;color:var(--tbb-olive-dark)!important;border:1px solid rgba(80,96,56,.24)!important}
.button:hover{transform:translateY(-2px);box-shadow:0 19px 36px rgba(72,85,55,.18)!important}
.eyebrow{color:var(--tbb-olive)!important;letter-spacing:.18em}
.eyebrow::before,.eyebrow::after{content:"❧"!important;font-size:.85rem}
.section{
  padding:92px 0;
  border:0!important;
  background:transparent!important;
}
.section--cream,.section--soft,.section--green,.section--pink,.section--dark{background:rgba(247,244,231,.52)!important}
.section-header{grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:38px;margin-bottom:42px;align-items:end}
.section-header h2{
  margin:7px 0 0;
  color:var(--tbb-ink)!important;
  font-family:var(--tbb-serif)!important;
  font-size:clamp(2.7rem,5vw,5.2rem)!important;
  line-height:.95;
  font-weight:500!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
  text-shadow:none!important;
}
.section-header p{color:var(--tbb-muted)!important}
.section-header>div::after{background:linear-gradient(90deg,var(--tbb-olive),transparent)!important;height:1px!important}
.text-link{color:var(--tbb-olive-dark)!important}

/* ----------------------------------------------------------------------
   Homepage hero — 1:1 botanical direction
   ---------------------------------------------------------------------- */
body.page-home #main-content{display:block!important}
.tattoo-hero,
body.page-home .tattoo-hero{
  position:relative;
  min-height:650px!important;
  display:grid;
  align-items:center;
  overflow:hidden;
  border:0!important;
  background:transparent!important;
  isolation:isolate;
}
.tattoo-hero::before{
  content:"";
  position:absolute;
  left:-70px;
  top:40px;
  width:250px;
  height:330px;
  z-index:-1;
  opacity:.32;
  transform:rotate(-18deg);
  background:
    radial-gradient(ellipse at 30% 20%,#78905b 0 12%,transparent 13%),
    radial-gradient(ellipse at 65% 34%,#567144 0 14%,transparent 15%),
    radial-gradient(ellipse at 30% 61%,#6f8752 0 15%,transparent 16%),
    radial-gradient(ellipse at 70% 80%,#47643b 0 14%,transparent 15%);
}
.tattoo-hero::after{
  content:"";
  position:absolute;
  right:-90px;
  bottom:-90px;
  width:360px;
  height:360px;
  z-index:4;
  opacity:.36;
  border-radius:50%;
  background:
    radial-gradient(ellipse at 35% 28%,#577543 0 13%,transparent 14%),
    radial-gradient(ellipse at 68% 38%,#77905a 0 15%,transparent 16%),
    radial-gradient(ellipse at 40% 68%,#3f6037 0 17%,transparent 18%),
    radial-gradient(ellipse at 74% 76%,#66834d 0 15%,transparent 16%);
  transform:rotate(26deg);
}
.tattoo-hero__noise,.tattoo-hero__smoke,.tattoo-hero__frame,.tattoo-hero__flash,.tattoo-hero__edge,.tattoo-hero__halo,.tattoo-hero__seal,.tattoo-hero__stamp{display:none!important}
.tattoo-hero__grid,
body.page-home .tattoo-hero__grid{
  width:min(calc(100% - 42px),1240px)!important;
  margin-inline:auto!important;
  display:grid!important;
  grid-template-columns:minmax(340px,.78fr) minmax(470px,1.22fr)!important;
  align-items:stretch!important;
  gap:0!important;
  padding:22px 0 55px!important;
}
.tattoo-hero__copy,
body.page-home .tattoo-hero__copy{
  position:relative;
  z-index:5;
  align-self:center;
  max-width:520px!important;
  padding:52px 44px 48px 22px!important;
  text-align:left!important;
}
.tattoo-hero__copy h1,
body.page-home .tattoo-hero__copy h1{
  margin:0!important;
  color:#35432f!important;
  font-family:var(--tbb-serif)!important;
  font-size:clamp(3.3rem,5.6vw,5.9rem)!important;
  line-height:.98!important;
  font-weight:500!important;
  letter-spacing:-.045em!important;
  text-transform:none!important;
  text-shadow:none!important;
}
.tattoo-hero__script,
body.page-home .tattoo-hero__script{
  margin:14px 0 38px!important;
  color:#35472f!important;
  font-family:var(--tbb-script)!important;
  font-size:clamp(3.1rem,5.4vw,5.5rem)!important;
  line-height:.9!important;
  font-weight:400;
  transform:rotate(-3deg)!important;
}
.tattoo-hero__script::after{content:"  ❧";font-size:.48em;vertical-align:top}
.tattoo-hero__lead,
body.page-home .tattoo-hero__lead{
  max-width:430px!important;
  margin:0!important;
  color:#475044!important;
  font-size:clamp(1rem,1.55vw,1.24rem)!important;
  line-height:1.55;
}
.tattoo-hero__highlights{display:none!important}
.tattoo-hero__copy .button-row{justify-content:flex-start!important;margin-top:32px!important}
.tattoo-hero__copy .button--primary::before{display:inline-grid!important;content:"❧"!important;place-items:center;width:34px;height:34px;margin-right:2px;border:1px solid rgba(255,255,255,.48)!important;border-radius:50%;position:static!important}
.tattoo-hero__copy .button--primary::after{content:"→";font-size:1.4rem;margin-left:9px}
.tattoo-hero__art,
body.page-home .tattoo-hero__art{
  position:relative;
  min-height:610px!important;
  align-self:stretch!important;
  display:block!important;
  overflow:hidden;
  border-radius:58% 0 0 58% / 68% 0 0 68%;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22),0 28px 65px rgba(62,72,48,.12);
  background:#d9dcc5;
}
.tattoo-hero__fairy,
body.page-home .tattoo-hero__fairy{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:62% center!important;
  filter:saturate(.78) contrast(.98) brightness(1.03)!important;
  transform:none!important;
}

/* ----------------------------------------------------------------------
   “Meine Stile” card
   ---------------------------------------------------------------------- */
.tattoo-styles,
body.page-home .tattoo-styles{
  position:relative;
  z-index:8;
  width:min(calc(100% - 70px),1160px);
  margin:-18px auto 28px;
  padding:28px 34px 34px!important;
  border:1px solid rgba(255,255,255,.42)!important;
  border-radius:38px;
  background:rgba(244,240,225,.83)!important;
  box-shadow:var(--tbb-shadow);
  backdrop-filter:blur(13px);
}
.tattoo-styles>.container{width:100%!important}
.tattoo-styles .section-header{display:block!important;margin:0 0 22px!important;text-align:center}
.tattoo-styles .section-header .eyebrow,.tattoo-styles .section-header p{display:none!important}
.tattoo-styles .section-header h2{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:20px;
  margin:0!important;
  font-family:var(--font-body)!important;
  font-size:1.25rem!important;
  font-weight:600!important;
  letter-spacing:.18em!important;
  text-transform:uppercase!important;
}
.tattoo-styles .section-header h2::before,.tattoo-styles .section-header h2::after{content:"❧";color:var(--tbb-olive);font-size:1.1rem}
.tattoo-styles .section-header>div::after{display:none!important}
.tattoo-style-grid,
body.page-home .tattoo-style-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:20px!important;
}
.tattoo-style-card,
body.page-home .tattoo-style-card{
  min-width:0;
  display:block!important;
  overflow:visible!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  text-align:center;
}
.tattoo-style-card:hover{transform:translateY(-5px)!important}
.tattoo-style-card__image{
  width:min(100%,140px);
  aspect-ratio:1;
  margin:0 auto 14px;
  border-radius:50%;
  overflow:hidden;
  background:#e9e2cf!important;
  box-shadow:inset 0 0 0 1px rgba(72,82,60,.06);
}
.tattoo-style-card__image::after{display:none!important}
.tattoo-style-card__image img{width:100%;height:100%;object-fit:cover!important;filter:sepia(.08) saturate(.8)!important;transition:transform .3s ease}
.tattoo-style-card:hover .tattoo-style-card__image img{transform:scale(1.04)}
.tattoo-style-card__body{padding:0!important}
.tattoo-style-card__spark,.tattoo-style-card__body p,.tattoo-style-card .text-link{display:none!important}
.tattoo-style-card h3{
  margin:0!important;
  color:#41483c!important;
  font-family:var(--font-body)!important;
  font-size:.78rem!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:.09em!important;
  text-transform:uppercase!important;
}
.tattoo-style-card h3::after{content:"❧";display:block;margin-top:6px;color:#76875a;font-size:.75rem}

/* ----------------------------------------------------------------------
   Values and quick links block matching supplied homepage
   ---------------------------------------------------------------------- */
.basti-quicklinks{position:relative;padding:20px 0 70px}
.basti-quicklinks::before{content:"";position:absolute;inset:18% -10% 0;z-index:-1;background:radial-gradient(circle at 20% 42%,rgba(116,136,78,.15),transparent 24%),radial-gradient(circle at 80% 70%,rgba(116,136,78,.12),transparent 27%)}
.basti-quicklinks__grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:44px;align-items:center}
.basti-values{display:grid;gap:12px;padding-right:34px;border-right:1px solid var(--tbb-line)}
.basti-value{display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:center}
.basti-value__icon,.basti-link-card__icon{
  display:grid;place-items:center;width:54px;height:54px;border:1px solid rgba(65,79,50,.17);border-radius:50%;background:rgba(244,241,227,.56);box-shadow:0 8px 20px rgba(72,82,57,.06)
}
.basti-value__icon svg,.basti-link-card__icon svg{width:25px;height:25px;fill:none;stroke:var(--tbb-olive-dark);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round}
.basti-value h3{margin:0 0 3px;font-size:.82rem;letter-spacing:.14em;text-transform:uppercase;color:#424b3d}
.basti-value p{margin:0;color:#596154;font-size:.84rem;line-height:1.35}
.basti-link-list{display:grid;gap:13px}
.basti-link-card{
  min-height:88px;
  display:grid;
  grid-template-columns:58px 1fr auto;
  align-items:center;
  gap:18px;
  padding:15px 26px 15px 18px;
  border:1px solid rgba(255,255,255,.42);
  border-radius:999px;
  background:rgba(245,242,229,.76);
  box-shadow:0 12px 30px rgba(70,80,56,.09);
  transition:.22s ease;
}
.basti-link-card:hover{transform:translateX(6px);box-shadow:0 18px 38px rgba(70,80,56,.14)}
.basti-link-card__icon{background:#dfe4cd;border:0}
.basti-link-card strong{font-size:.92rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:#4b5347}
.basti-link-card__arrow{font-family:var(--tbb-serif);font-size:2.2rem;color:var(--tbb-olive-dark);line-height:1}
.basti-signoff{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:20px;margin-top:44px}
.basti-signoff img{width:230px;mix-blend-mode:multiply;opacity:.78}
.basti-signoff p{margin:0 0 8px;text-align:center;color:#596154;font-size:.82rem}
.basti-signoff a{justify-self:start;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;font-size:1.5rem;color:var(--tbb-olive-dark)}

/* ----------------------------------------------------------------------
   Gallery, artist, reviews, FAQ, CTA and generic page sections
   ---------------------------------------------------------------------- */
.tattoo-gallery{background:rgba(247,244,231,.54)!important}
.tattoo-gallery__slider,.tattoo-style-card,.artist-card,.social-card,.review-card,.content-card,.info-card,.form-card,.faq-item,.service-card,.feature-card,.event-card,.quote-panel,.cta-panel,.trust-item{
  border-color:rgba(73,85,59,.13)!important;
}
.tattoo-gallery__viewport{overflow-x:auto;scrollbar-width:none}
.tattoo-gallery__grid{gap:18px!important}
.tattoo-gallery__item{background:rgba(244,241,227,.76)!important;border:0!important;border-radius:26px!important;overflow:hidden;box-shadow:0 14px 35px rgba(65,75,50,.09)}
.tattoo-gallery__open{border:0!important;background:transparent!important}
.tattoo-gallery__open img{filter:saturate(.78) contrast(.98)!important}
.tattoo-gallery__item figcaption{background:transparent!important;color:var(--tbb-ink)!important;border:0!important}
.tattoo-gallery__zoom{background:var(--tbb-olive)!important;color:white!important;border:0!important;border-radius:50%!important}
.tattoo-gallery__arrow{border:0!important;border-radius:50%!important;background:rgba(244,241,227,.9)!important;color:var(--tbb-olive-dark)!important;box-shadow:0 8px 24px rgba(65,75,50,.1)}
.tattoo-gallery__counter{color:var(--tbb-muted)!important}
.tattoo-gallery__counter i{background:var(--tbb-olive)!important}

.artist-social__grid{gap:28px!important}
.artist-card,.social-card{
  overflow:hidden;
  border:0!important;
  border-radius:36px!important;
  background:rgba(246,243,230,.72)!important;
  box-shadow:var(--tbb-shadow)!important;
}
.artist-card__portrait img{filter:saturate(.72) contrast(.98)!important}
.artist-card__portrait span{background:rgba(78,95,56,.86)!important;color:white!important;border-radius:999px!important}
.artist-card__copy h2,.social-card h2,.content-card h2,.content-card h3,.info-card h2,.info-card h3,.form-card h2{
  font-family:var(--tbb-serif)!important;color:var(--tbb-ink)!important;text-transform:none!important;text-shadow:none!important
}
.artist-card__copy p,.social-card p,.content-card p,.info-card p,.form-card p{color:var(--tbb-muted)!important}
.check-list li::before{background:var(--tbb-olive)!important;color:white!important;border-radius:50%!important}
.social-card{background:linear-gradient(145deg,#dfe4cb,#f2efdf)!important}
.social-card__bird{color:var(--tbb-olive)!important}
.social-card__qr{background:white!important;border-color:rgba(68,80,54,.15)!important;border-radius:22px!important}

.review-grid{gap:20px!important}
.review-card{
  border:0!important;
  border-radius:30px!important;
  background:rgba(246,243,230,.78)!important;
  color:var(--tbb-ink)!important;
  box-shadow:0 14px 36px rgba(65,75,50,.09)!important;
}
.review-card__quote,.review-card__stars{color:var(--tbb-olive)!important}
.review-card blockquote{color:#4c5548!important}
.review-card cite{color:var(--tbb-muted)!important}
.review-card__verified{background:#dfe5cc!important;color:var(--tbb-olive-dark)!important;border-color:rgba(86,105,59,.2)!important;border-radius:999px!important}
.review-write{border:0!important;border-radius:32px!important;background:linear-gradient(135deg,#dfe4cd,#f1eedf)!important;color:var(--tbb-ink)!important;box-shadow:var(--tbb-shadow)!important}
.review-write p{color:var(--tbb-muted)!important}
.review-modal__panel{background:#f0eddc!important;color:var(--tbb-ink)!important;border-color:rgba(70,83,56,.17)!important;border-radius:30px!important}
.review-modal__backdrop{background:rgba(45,53,38,.48)!important}
.review-modal input,.review-modal textarea{background:rgba(255,255,255,.58)!important;color:var(--tbb-ink)!important;border-color:rgba(70,83,56,.2)!important;border-radius:16px!important}

.faq{display:grid;gap:12px}
.faq-item{overflow:hidden;border:0!important;border-radius:24px!important;background:rgba(246,243,230,.75)!important;box-shadow:0 11px 28px rgba(65,75,50,.07)!important}
.faq-item button{color:var(--tbb-ink)!important;background:transparent!important}
.faq-item button span:last-child{color:var(--tbb-olive)!important}
.faq-panel{color:var(--tbb-muted)!important;border-color:var(--tbb-line)!important}

.cta-section{padding-bottom:110px!important}
.cta-panel{
  border:0!important;
  border-radius:42px!important;
  background:
    radial-gradient(circle at 95% 20%,rgba(255,255,255,.32),transparent 28%),
    linear-gradient(135deg,#657b43,#445b31)!important;
  color:white!important;
  box-shadow:0 25px 60px rgba(62,75,48,.22)!important;
}
.cta-panel h2{font-family:var(--tbb-serif)!important;color:white!important;text-transform:none!important;text-shadow:none!important}
.cta-panel p{color:rgba(255,255,255,.78)!important}
.cta-panel .eyebrow{color:#eef3df!important}
.cta-panel .button--light{background:#f2efdf!important;color:var(--tbb-olive-dark)!important}
.cta-panel .button--ghost{border-color:rgba(255,255,255,.5)!important;color:white!important;background:transparent!important}

.page-hero{
  min-height:430px!important;
  background:linear-gradient(135deg,#e5e3cf,#f4f0df)!important;
  color:var(--tbb-ink)!important;
  border:0!important;
}
.page-hero::after{background:linear-gradient(90deg,rgba(238,235,216,.94),rgba(238,235,216,.65))!important}
.page-hero__background{filter:saturate(.6) contrast(.9)!important;opacity:.45!important}
.page-hero h1{font-family:var(--tbb-serif)!important;color:var(--tbb-ink)!important;text-transform:none!important;text-shadow:none!important}
.page-hero p,.breadcrumbs{color:var(--tbb-muted)!important}.breadcrumbs a{color:var(--tbb-olive-dark)!important}
.content-card,.info-card,.form-card,.service-card,.feature-card,.event-card,.quote-panel{
  border:0!important;
  border-radius:30px!important;
  background:rgba(246,243,230,.78)!important;
  box-shadow:0 14px 36px rgba(65,75,50,.08)!important;
}
.public-form input,.public-form textarea,.public-form select,
.form-card input,.form-card textarea,.form-card select{
  border:1px solid rgba(68,82,54,.17)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.62)!important;
  color:var(--tbb-ink)!important;
}
.public-form input:focus,.public-form textarea:focus,.public-form select:focus{outline:2px solid rgba(99,118,64,.25)!important;border-color:var(--tbb-olive)!important}

/* ----------------------------------------------------------------------
   Footer and floating controls
   ---------------------------------------------------------------------- */
.site-footer{
  border:0!important;
  background:
    radial-gradient(circle at 8% 20%,rgba(119,139,82,.18),transparent 22%),
    linear-gradient(180deg,#e4e2ce,#d8dcc2)!important;
  color:var(--tbb-ink)!important;
}
.site-footer__line{border-color:rgba(74,87,58,.14)!important;color:var(--tbb-olive-dark)!important;background:rgba(244,241,227,.35)!important;font-family:var(--tbb-serif)!important}
.footer-brand__logo img{max-width:250px;mix-blend-mode:multiply}
.footer-brand p,.site-footer p{color:var(--tbb-muted)!important}
.footer-title,.footer-cta h2{font-family:var(--tbb-serif)!important;color:var(--tbb-ink)!important;text-transform:none!important;text-shadow:none!important}
.footer-links a:hover,.footer-social{color:var(--tbb-olive-dark)!important}
.footer-bottom{border-color:rgba(74,87,58,.14)!important;color:var(--tbb-muted)!important}
.floating-instagram,.back-to-top{
  border:0!important;
  border-radius:50%!important;
  background:rgba(245,242,229,.92)!important;
  color:var(--tbb-olive-dark)!important;
  box-shadow:0 12px 28px rgba(63,75,49,.16)!important;
}

/* Menu loader restyle (keeps existing functionality) */
#inkml212{
  background:radial-gradient(circle at 50% 40%,rgba(117,137,82,.18),transparent 36%),linear-gradient(145deg,#f2efdf,#dfe2c9)!important;
}
#inkml212::before,#inkml212::after{border-color:rgba(79,94,58,.22)!important}
.inkml212-smoke{background:radial-gradient(circle at 20% 75%,rgba(107,129,72,.18),transparent 32%),radial-gradient(circle at 80% 25%,rgba(130,147,96,.2),transparent 34%)!important}
.inkml212-image{background:#e7e4d0!important;border-color:rgba(72,86,54,.25)!important;box-shadow:0 0 0 7px #eeebd9,0 0 0 8px rgba(83,100,60,.26),0 28px 70px rgba(57,67,46,.22)!important;clip-path:none!important;border-radius:38px!important}
.inkml212-image::before{background:linear-gradient(180deg,transparent 55%,rgba(38,49,30,.24))!important}
.inkml212-image::after{content:"❧"!important;color:#e8efda!important;text-shadow:none!important}
.inkml212-image img{filter:saturate(.75) contrast(.98)!important;object-position:62% center!important}
.inkml212-brand{color:white!important;text-shadow:0 3px 16px rgba(32,43,26,.45)!important;font-family:var(--tbb-script)!important}
.inkml212-label{color:var(--tbb-ink)!important}.inkml212-label strong{color:var(--tbb-olive-dark)!important}
.inkml212-track{background:rgba(255,255,255,.48)!important;border-color:rgba(74,88,56,.2)!important;box-shadow:none!important;border-radius:999px!important}
.inkml212-track::after{display:none!important}.inkml212-bar{background:linear-gradient(90deg,#92a56f,#556d38)!important;box-shadow:none!important;border-radius:999px!important}

/* Cookie dialog theme overrides */
.inkcc-overlay{background:rgba(45,53,38,.48)!important}
.inkcc-panel{background:#f0eddc!important;color:var(--tbb-ink)!important;border-color:rgba(74,88,56,.18)!important;border-radius:32px!important;box-shadow:0 30px 90px rgba(46,55,37,.25)!important}
.inkcc-kicker,.inkcc-mark,.inkcc-copy a{color:var(--tbb-olive)!important}.inkcc-title,.inkcc-panel h3,.inkcc-panel h4{color:var(--tbb-ink)!important}
.inkcc-copy,.inkcc-panel p{color:var(--tbb-muted)!important}
.inkcc-btn{border-radius:999px!important}.inkcc-btn--primary{background:var(--tbb-olive)!important;color:white!important;border-color:var(--tbb-olive)!important}.inkcc-btn--secondary,.inkcc-btn--ghost{background:rgba(255,255,255,.45)!important;color:var(--tbb-olive-dark)!important;border-color:rgba(74,88,56,.18)!important}
.inkcc-card{background:rgba(255,255,255,.35)!important;border-color:rgba(74,88,56,.13)!important;border-radius:20px!important}
.inkcc-reopen{background:var(--tbb-olive)!important;color:white!important;border-radius:999px!important}

/* ----------------------------------------------------------------------
   Responsive layout
   ---------------------------------------------------------------------- */
@media (max-width:820px){
  .tattoo-hero__grid,body.page-home .tattoo-hero__grid{grid-template-columns:.9fr 1.1fr!important}
  .tattoo-hero__copy,body.page-home .tattoo-hero__copy{padding-right:20px!important}
  .tattoo-style-grid,body.page-home .tattoo-style-grid{grid-template-columns:repeat(3,1fr)!important;row-gap:28px!important}
  .basti-quicklinks__grid{grid-template-columns:1fr;gap:30px}.basti-values{grid-template-columns:1fr 1fr;border-right:0;border-bottom:1px solid var(--tbb-line);padding:0 0 30px}
  .artist-card{grid-template-columns:1fr!important}.artist-card__portrait{min-height:520px}
}
@media (max-width:760px){
  .container{width:min(calc(100% - 26px),1240px)}
  .header__inner{min-height:92px}.brand__mark{width:210px!important}.nav-toggle{width:60px;height:60px}.nav-toggle__bars{width:29px;gap:6px}
  .main-nav{width:100vw!important;padding-inline:18px!important}
  .tattoo-hero{min-height:auto!important;padding-bottom:0}
  .tattoo-hero__grid,body.page-home .tattoo-hero__grid{width:100%!important;grid-template-columns:1fr!important;padding:0!important}
  .tattoo-hero__copy,body.page-home .tattoo-hero__copy{order:2;max-width:none!important;padding:42px 28px 74px!important;text-align:left!important}
  .tattoo-hero__art,body.page-home .tattoo-hero__art{order:1;min-height:520px!important;border-radius:0 0 48% 48% / 0 0 18% 18%;box-shadow:none}
  .tattoo-hero__fairy,body.page-home .tattoo-hero__fairy{object-position:63% 36%!important}
  .tattoo-hero__copy h1,body.page-home .tattoo-hero__copy h1{font-size:clamp(3.3rem,16vw,5rem)!important}
  .tattoo-hero__script,body.page-home .tattoo-hero__script{font-size:clamp(3.2rem,16vw,4.7rem)!important;margin-bottom:27px!important}
  .tattoo-hero__lead,body.page-home .tattoo-hero__lead{font-size:1.05rem!important}
  .tattoo-hero__copy .button-row{display:block!important}.tattoo-hero__copy .button{width:auto!important;max-width:100%}
  .tattoo-styles,body.page-home .tattoo-styles{width:calc(100% - 26px);margin:-30px auto 20px;padding:26px 16px 30px!important;border-radius:30px}
  .tattoo-style-grid,body.page-home .tattoo-style-grid{grid-template-columns:repeat(2,1fr)!important;gap:24px 14px!important}
  .tattoo-style-card{grid-template-columns:1fr!important}.tattoo-style-card__image{width:125px!important;margin-inline:auto!important}
  .basti-quicklinks{padding-bottom:50px}.basti-values{grid-template-columns:1fr}.basti-link-card{min-height:78px;padding-right:20px}.basti-link-card strong{font-size:.78rem;letter-spacing:.08em}.basti-link-card__arrow{font-size:1.8rem}
  .basti-signoff{grid-template-columns:1fr;justify-items:center;text-align:center}.basti-signoff img{width:220px}.basti-signoff a{justify-self:center}
  .section{padding:68px 0}.section-header{grid-template-columns:1fr;gap:16px}.section-header h2{font-size:2.8rem!important}
  .review-grid,.feature-grid,.card-grid,.events-grid,.contact-cards{grid-template-columns:1fr!important}
  .footer-grid{grid-template-columns:1fr!important}.footer-brand,.footer-cta{grid-column:auto!important}
}
@media (max-width:430px){
  .brand__mark{width:180px!important}.nav-toggle{width:54px;height:54px}
  .tattoo-hero__art,body.page-home .tattoo-hero__art{min-height:455px!important}
  .tattoo-hero__copy,body.page-home .tattoo-hero__copy{padding-inline:22px!important}
  .tattoo-styles .section-header h2{font-size:1rem!important;gap:10px}
  .tattoo-style-card__image{width:108px!important}
  .basti-link-card{grid-template-columns:50px 1fr auto;gap:12px}.basti-link-card__icon{width:48px;height:48px}
}
