/* ServiceDZ Premium UI Layer — 2.4.0
 * Visual refinement layer. No framework dependency.
 */
:root{
  --sdz-premium-green:#006b3f;
  --sdz-premium-green-2:#0a8050;
  --sdz-premium-gold:#f0b429;
  --sdz-premium-ink:#0b1f17;
  --sdz-premium-muted:#64748b;
  --sdz-premium-line:rgba(15,23,42,.09);
  --sdz-premium-surface:rgba(255,255,255,.94);
  --sdz-premium-shadow:0 12px 36px rgba(15,23,42,.07);
  --sdz-premium-shadow-hover:0 20px 55px rgba(15,23,42,.12);
  --sdz-premium-ease:cubic-bezier(.2,.75,.25,1);
}

.sdz-home-wrapper,.sdz-archive-wrapper,.sdz-single-wrapper,.sdz-procedure-page,
.sdz-taxonomy-page,.sdz-document-page,.sdz-letter-page,.sdz-eservice-page{
  --sdz-surface-elevated:#fff;
  --sdz-focus-ring:0 0 0 4px rgba(240,180,41,.24);
}

/* Premium page backgrounds and containers */
.sdz-home-wrapper,.sdz-archive-wrapper,.sdz-single-wrapper,.sdz-procedure-page,
.sdz-taxonomy-page,.sdz-document-page,.sdz-letter-page,.sdz-eservice-page{
  position:relative;
}
.sdz-home-wrapper::before,.sdz-archive-wrapper::before,.sdz-taxonomy-page::before{
  content:"";position:absolute;inset:0 0 auto;height:340px;pointer-events:none;z-index:0;
  background:radial-gradient(circle at 85% 10%,rgba(0,107,63,.075),transparent 35%),radial-gradient(circle at 10% 0%,rgba(240,180,41,.09),transparent 28%);
}
.sdz-home-wrapper > *,.sdz-archive-wrapper > *,.sdz-taxonomy-page > *{position:relative;z-index:1}

/* Consistent focus treatment */
.sdz-home-wrapper :is(a,button,input,select,textarea):focus-visible,
.sdz-archive-wrapper :is(a,button,input,select,textarea):focus-visible,
.sdz-single-wrapper :is(a,button,input,select,textarea):focus-visible,
.sdz-procedure-page :is(a,button,input,select,textarea):focus-visible,
.sdz-taxonomy-page :is(a,button,input,select,textarea):focus-visible,
.sdz-document-page :is(a,button,input,select,textarea):focus-visible,
.sdz-letter-page :is(a,button,input,select,textarea):focus-visible,
.sdz-eservice-page :is(a,button,input,select,textarea):focus-visible{outline:0;box-shadow:var(--sdz-focus-ring)}

/* Hero refinement */
.sdz-archive-hero,.sdz-es-hero,.sdz-eservice-hero,.sdz-doc-hero,.sdz-letter-hero,.sdz-taxonomy-hero{
  position:relative;overflow:hidden;border:1px solid rgba(0,107,63,.12)!important;
  box-shadow:var(--sdz-premium-shadow);isolation:isolate;
}
.sdz-archive-hero::after,.sdz-es-hero::after,.sdz-eservice-hero::after,.sdz-doc-hero::after,
.sdz-letter-hero::after,.sdz-taxonomy-hero::after{
  content:"";position:absolute;inset:auto -8% -55% auto;width:300px;height:300px;border-radius:50%;
  background:radial-gradient(circle,rgba(240,180,41,.18),transparent 68%);pointer-events:none;z-index:-1;
}
.sdz-archive-hero__eyebrow,.sdz-es-hero__eyebrow,.sdz-eservice-kicker,.sdz-letter-kicker,.sdz-taxonomy-eyebrow{
  letter-spacing:.01em;box-shadow:0 4px 14px rgba(0,107,63,.06)
}

/* Section heads */
.sdz-section-title,.sdz-taxonomy-section-head,.sdz-eservice-section__heading,.sdz-discovery-header{
  position:relative;
}
.sdz-section-title::after,.sdz-eservice-section__heading::after{
  content:"";height:3px;width:34px;border-radius:99px;background:linear-gradient(90deg,var(--sdz-premium-gold),var(--sdz-premium-green));
  position:absolute;inset-inline-start:0;bottom:-7px;opacity:.9;
}

/* Cards: unified premium interaction */
:is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,
.sdz-letter-card,.sdz-letter-attachment-card,.sdz-eservice-provider-card,.sdz-side-card,
.sdz-taxonomy-side-card,.sdz-summary-card,.sdz-list-card){
  transition:transform .28s var(--sdz-premium-ease),box-shadow .28s var(--sdz-premium-ease),border-color .28s ease,background-color .28s ease;
}
:is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,
.sdz-letter-card,.sdz-letter-attachment-card,.sdz-eservice-provider-card,.sdz-taxonomy-side-card):hover{
  transform:translateY(-4px);box-shadow:var(--sdz-premium-shadow-hover);border-color:rgba(0,107,63,.20)!important;
}
:is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,
.sdz-letter-card,.sdz-letter-attachment-card,.sdz-eservice-provider-card,.sdz-taxonomy-side-card)::before{
  transition:transform .3s var(--sdz-premium-ease);transform:scaleX(0);transform-origin:right;
}
:is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,
.sdz-letter-card,.sdz-letter-attachment-card,.sdz-eservice-provider-card,.sdz-taxonomy-side-card):hover::before{transform:scaleX(1)}

/* Icon containers: visual hierarchy without excessive decoration */
:is(.sdz-topic-card__icon,.sdz-type-card__icon,.sdz-letter-card__icon,.sdz-letter-attachment-card__icon,
.sdz-eservice-provider-card__icon,.sdz-eservice-section__icon,.sdz-doc-quick-info-icon,.sdz-auth-icon,
.sdz-empty-icon,.sdz-empty-icon-v6,.sdz-eyebrow-icon){
  position:relative;overflow:hidden;transition:transform .25s var(--sdz-premium-ease),background-color .25s ease,box-shadow .25s ease;
}
:is(.sdz-topic-card,.sdz-type-card,.sdz-letter-attachment-card,.sdz-eservice-provider-card):hover :is(.sdz-topic-card__icon,.sdz-type-card__icon,.sdz-letter-attachment-card__icon,.sdz-eservice-provider-card__icon){
  transform:scale(1.06) rotate(-2deg);box-shadow:0 8px 22px rgba(0,107,63,.14)
}

/* Buttons */
.sdz-btn,.sdz-action-button,.sdz-action-primary,.sdz-action-secondary,.sdz-es-btn-primary,
.sdz-doc-action-btn,.sdz-letter-action,.sdz-eservice-hero-btn,.sdz-eservice-sidebar-action{
  position:relative;overflow:hidden;transform:translateZ(0);
}
:is(.sdz-btn,.sdz-action-primary,.sdz-es-btn-primary,.sdz-doc-action-btn,.sdz-letter-action,.sdz-eservice-hero-btn):hover{
  transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,107,63,.16)
}
:is(.sdz-btn,.sdz-action-primary,.sdz-es-btn-primary,.sdz-doc-action-btn,.sdz-letter-action,.sdz-eservice-hero-btn)::after{
  content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);
  transform:translateX(-120%);transition:transform .6s ease;pointer-events:none
}
:is(.sdz-btn,.sdz-action-primary,.sdz-es-btn-primary,.sdz-doc-action-btn,.sdz-letter-action,.sdz-eservice-hero-btn):hover::after{transform:translateX(120%)}

/* Search becomes a focal interaction */
:is(.sdz-archive-search,.sdz-es-search,.sdz-taxonomy-search,.sdz-faq-search){
  position:relative;filter:drop-shadow(0 7px 18px rgba(15,23,42,.05));
}
:is(.sdz-archive-search__box,.sdz-es-search,.sdz-taxonomy-search__field,.sdz-faq-search input):focus-within{
  border-color:rgba(0,107,63,.35)!important;box-shadow:0 0 0 4px rgba(0,107,63,.08),0 10px 28px rgba(15,23,42,.07)!important;
}

/* Chips / badges */
:is(.sdz-badge,.sdz-mini-chip,.sdz-archive-taxonomy-chip,.sdz-es-chip,.sdz-eservice-chip,.sdz-letter-status,.sdz-doc-type-badge){
  transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease;
}
:is(.sdz-badge,.sdz-mini-chip,.sdz-archive-taxonomy-chip,.sdz-es-chip,.sdz-eservice-chip,.sdz-letter-status,.sdz-doc-type-badge):hover{
  transform:translateY(-1px);box-shadow:0 5px 14px rgba(15,23,42,.07)
}

/* FAQ */
.sdz-faq-item{border:1px solid var(--sdz-premium-line);border-radius:16px;overflow:hidden;background:#fff;transition:box-shadow .25s ease,border-color .25s ease,transform .25s ease}
.sdz-faq-item:hover{border-color:rgba(0,107,63,.18);box-shadow:0 10px 28px rgba(15,23,42,.07)}
.sdz-faq-question{position:relative}
.sdz-faq-question::after{content:"";width:6px;height:6px;border-radius:50%;background:var(--sdz-premium-gold);position:absolute;inset-inline-start:12px;top:50%;transform:translateY(-50%);opacity:0;transition:opacity .2s ease}
.sdz-faq-item:hover .sdz-faq-question::after{opacity:1}

/* Result/card content */
.sdz-card-title,.sdz-card-title-v6,.sdz-doc-card-title,.sdz-eservice-provider-card__name,.sdz-letter-related-item__title{transition:color .2s ease}
:is(.sdz-archive-card,.sdz-result-card,.sdz-es-card,.sdz-doc-card,.sdz-letter-card):hover :is(.sdz-card-title,.sdz-card-title-v6,.sdz-doc-card-title){color:var(--sdz-premium-green)!important}

/* Archive toolbar */
.sdz-archive-main,.sdz-es-toolbar,.sdz-taxonomy-results-head{position:relative}
.sdz-archive-main::before,.sdz-es-toolbar::before{content:"";position:absolute;inset-inline-start:0;top:0;width:100%;height:1px;background:linear-gradient(90deg,rgba(0,107,63,.22),transparent);}

/* Sidebar cards */
:is(.sdz-taxonomy-side-card,.sdz-eservice-sidebar__card,.sdz-doc-sidebar,.sdz-letter-sidebar .sdz-letter-card){box-shadow:0 8px 28px rgba(15,23,42,.055)}
:is(.sdz-taxonomy-side-card,.sdz-eservice-sidebar__card,.sdz-letter-sidebar .sdz-letter-card) :is(.sdz-taxonomy-side-head,.sdz-eservice-sidebar__heading,.sdz-letter-card__header){border-bottom-color:rgba(0,107,63,.10)}

/* Forms */
:is(.sdz-auth-card,.sdz-auth-form,.sdz-suggestion-form,.sdz-submission-form){
  box-shadow:0 18px 55px rgba(15,23,42,.08);border-color:rgba(15,23,42,.08)
}
:is(.sdz-auth-form input,.sdz-auth-form select,.sdz-auth-form textarea,.sdz-submission-form input,.sdz-submission-form select,.sdz-submission-form textarea){
  transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease
}
:is(.sdz-auth-form input,.sdz-auth-form select,.sdz-auth-form textarea,.sdz-submission-form input,.sdz-submission-form select,.sdz-submission-form textarea):focus{
  border-color:rgba(0,107,63,.4)!important;background:#fff;box-shadow:0 0 0 4px rgba(0,107,63,.08)!important
}

/* Tables and prose */
.sdz-prose-box :is(table,.wp-block-table table){border-collapse:separate;border-spacing:0;overflow:hidden;border:1px solid var(--sdz-premium-line);border-radius:14px;background:#fff}
.sdz-prose-box th{background:#f4faf6;color:var(--sdz-premium-green);font-weight:800}
.sdz-prose-box :is(th,td){padding:12px 14px;border-bottom:1px solid var(--sdz-premium-line)}
.sdz-prose-box tr:last-child :is(th,td){border-bottom:0}

/* Pagination */
:is(.sdz-taxonomy-pagination,.sdz-es-pagination,.sdz-pagination) :is(a,span,button){min-width:40px;min-height:40px;display:inline-grid;place-items:center;border-radius:11px;transition:all .2s ease}
:is(.sdz-taxonomy-pagination,.sdz-es-pagination,.sdz-pagination) a:hover{background:#f0f8f4;color:var(--sdz-premium-green);transform:translateY(-1px)}

/* Mobile refinements */
@media (max-width:767px){
  .sdz-archive-hero,.sdz-es-hero,.sdz-eservice-hero,.sdz-doc-hero,.sdz-letter-hero,.sdz-taxonomy-hero{border-radius:20px!important}
  :is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,.sdz-letter-card):hover{transform:translateY(-2px)}
  .sdz-page-intro{margin-top:26px}
}

@media (prefers-reduced-motion:reduce){
  :is(.sdz-archive-card,.sdz-result-card,.sdz-topic-card,.sdz-type-card,.sdz-es-card,.sdz-doc-card,.sdz-letter-card,.sdz-eservice-provider-card):hover{transform:none}
}
.sdz-reveal-item{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s var(--sdz-premium-ease)}
.sdz-reveal-item.is-visible{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.sdz-reveal-item{opacity:1;transform:none;transition:none}}
