/* Tamiyouz V2 / Phase33 — Ultra-Premium visual polish.
 * Additive only: existing layouts, forms, content, links and permissions untouched.
 */
:root {
  --tyz33-gold: #c99b59;
  --tyz33-gold-bright: #f2d39a;
  --tyz33-ink: #132744;
  --tyz33-ease: cubic-bezier(.22, 1, .36, 1);
  --tyz33-outline: rgba(198,150,76,.48);
}
html[data-tyz-theme="dark"] {
  --tyz33-gold: #e9bf7d;
  --tyz33-ink: #f5ead8;
  --tyz33-outline: rgba(239,199,133,.48);
}
html.tyz33-ready body :is(.tyz33-cta,.tyz33-conversion-link) {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  min-height: 44px;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .65em;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 5px;
  transition: transform .24s var(--tyz33-ease), box-shadow .28s var(--tyz33-ease),
              border-color .24s var(--tyz33-ease), filter .24s var(--tyz33-ease);
}
html.tyz33-ready body .tyz33-cta .tyz33-arrow {
  flex: none;
  font-family: Arial, sans-serif;
  font-size: 1.1em;
  line-height: 1;
  opacity: .93;
  display: inline-flex;
  transition: transform .27s var(--tyz33-ease), opacity .2s;
}
html.tyz33-ready body .tyz33-cta:is(:hover,:focus-visible) .tyz33-arrow {
  opacity: 1;
  transform: translate(2px,-2px);
}
html[dir="rtl"].tyz33-ready body .tyz33-cta:is(:hover,:focus-visible) .tyz33-arrow {
  transform: translate(-2px,-2px);
}
@media (hover:hover) and (pointer:fine) {
 html.tyz33-ready body .tyz33-cta:hover {
   transform: translateY(-3px);
   box-shadow: 0 16px 34px rgba(146,100,43,.21);
   filter: saturate(1.075);
 }
 html.tyz33-ready body .tyz33-conversion-link:hover {
   transform: translateY(-2px);
 }
}
html.tyz33-ready body :is(.tyz33-cta,.tyz33-conversion-link):focus-visible {
  outline: 3px solid var(--tyz33-gold) !important;
  outline-offset: 4px !important;
}
html.tyz33-ready body .tyz33-cta:active {
  transform: translateY(0) scale(.985);
  transition-duration: .08s;
}
html.tyz33-ready #tyz-global-header .tyz-header__cta {
  border: 1px solid var(--tyz33-outline);
  box-shadow: 0 5px 20px rgba(142,96,41,.11);
  transition: box-shadow .27s var(--tyz33-ease), transform .27s var(--tyz33-ease), border-color .27s;
}
@media (hover:hover) and (pointer:fine) {
 html.tyz33-ready #tyz-global-header .tyz-header__cta:hover {
  border-color: var(--tyz33-gold-bright);
  box-shadow: 0 10px 27px rgba(184,124,48,.19);
 }
}
html.tyz33-ready #tyz-home-v21 .tyz-hero__copy :is(h1,p),
html.tyz33-ready body.tyz-site-v1 .tyz-site-hero :is(h1,p),
html.tyz33-ready #tyz-premium-blog .tyz-pb-hero__copy :is(h1,p),
html.tyz33-ready #tyz-premium-article .tyz-pa-hero__copy :is(h1,p),
html.tyz33-ready body .tj-hero-content :is(h1,p) {
  text-wrap: pretty;
}
html.tyz33-ready #tyz-home-v21 .tyz-hero__copy h1,
html.tyz33-ready body.tyz-site-v1 .tyz-site-hero h1,
html.tyz33-ready #tyz-premium-blog .tyz-pb-hero__copy h1,
html.tyz33-ready #tyz-premium-article .tyz-pa-hero__copy h1,
html.tyz33-ready body .tj-hero-content h1 {
  text-wrap: balance;
}
html.tyz33-ready body :is(
 .tyz-site-card,
 .tyz-pb-article-card,
 .tyz-pb-category-card,
 .tyz-xp-project-card,
 .tj-value-card
) {
  transition: transform .34s var(--tyz33-ease),
              box-shadow .34s var(--tyz33-ease),
              border-color .28s var(--tyz33-ease);
}
html.tyz33-ready body :is(
 .tyz-site-card,
 .tyz-pb-article-card,
 .tyz-pb-category-card,
 .tyz-xp-project-card,
 .tj-value-card
):focus-within {
  border-color: var(--tyz33-outline);
  box-shadow: 0 0 0 2px rgba(196,149,79,.22),0 22px 54px rgba(13,30,53,.10);
}
@media (hover:hover) and (pointer:fine) {
 html.tyz33-ready body :is(
   .tyz-pb-article-card,
   .tyz-pb-category-card,
   .tyz-xp-project-card,
   .tj-value-card
 ):hover {
   transform: translateY(-4px);
   box-shadow: 0 22px 50px rgba(13,30,53,.12),0 0 0 1px rgba(200,152,80,.17);
 }
}
html.tyz33-ready body.tyz-site-v1 :is(.tyz-contact-panel,.tyz21-service-helper),
html.tyz33-ready body .tj-form-panel {
  transition: border-color .32s var(--tyz33-ease), box-shadow .32s var(--tyz33-ease);
}
html.tyz33-ready body.tyz-site-v1 :is(.tyz-contact-panel,.tyz21-service-helper):focus-within,
html.tyz33-ready body .tj-form-panel:focus-within {
  border-color: var(--tyz33-outline);
  box-shadow: 0 23px 68px rgba(15,32,58,.12), 0 0 0 2px rgba(199,159,92,.09);
}
html.tyz33-ready body.tyz-site-v1 .tyz-contact-actions :is(button,input[type="submit"]),
html.tyz33-ready body .tj-form-send {
  min-height: 48px;
  transition: filter .2s, box-shadow .25s, transform .15s;
}
html.tyz33-ready body.tyz-site-v1 .tyz-contact-actions :is(button,input[type="submit"]):is(:hover,:focus-visible),
html.tyz33-ready body .tj-form-send:is(:hover,:focus-visible) {
  filter: brightness(1.04);
  box-shadow: 0 13px 30px rgba(140,98,43,.20);
}
html.tyz33-ready body :is(.tyz-site-cta,.tyz-pb-cta,.tyz-pa-cta,.tyz-hub-cta) {
  scroll-margin-top: clamp(72px, 9vw, 112px);
}
html.tyz33-ready body :is(
 .tyz-site-cta,
 .tyz-pb-cta,
 .tyz-pa-cta,
 .tyz-hub-cta
) h2 {
  text-wrap: balance;
}
html.tyz33-ready body :is(.tyz22-contact-button,.tyz-pb-article-card__read,.tyz-site-link) {
  text-underline-offset: 5px;
}
html.tyz33-ready body .tyz33-cta .tyz33-arrow,
html.tyz33-ready body .tyz33-conversion-link {
  pointer-events: auto;
}
@media(max-width:760px) {
 html.tyz33-ready body .tyz33-cta {
   gap: .45em;
   min-height: 44px;
 }
 html.tyz33-ready body :is(.tyz-site-card,.tyz-pb-article-card,.tyz-xp-project-card,.tj-value-card):hover {
   transform: none;
 }
 html.tyz33-ready body .tyz33-cta:active {
   transform: none;
 }
}
@media (hover:none), (pointer:coarse) {
 html.tyz33-ready body .tyz33-cta:hover {
  transform: none;
 }
 html.tyz33-ready body .tyz33-arrow {
  transform: none !important;
 }
}
@media (prefers-reduced-motion:reduce) {
 html.tyz33-ready body :is(.tyz33-cta,.tyz33-conversion-link,.tyz-site-card,.tyz-pb-article-card,.tyz-pb-category-card,.tyz-xp-project-card,.tj-value-card,.tj-form-panel,.tyz-contact-panel,.tyz21-service-helper,.tyz-header__cta),
 html.tyz33-ready body .tyz33-cta .tyz33-arrow {
   transition: none !important;
   animation: none !important;
   transform: none !important;
 }
}
