/**
 * Dr. Panturu Luxury v1.5 — Universal menu and restrained luxury motion.
 * No animation frameworks / external requests; progressive enhancement only.
 */
:root {
  --drp-motion-gold: #c8a879;
  --drp-motion-ink: #100e0d;
  --drp-motion-ease: cubic-bezier(.22, 1, .36, 1);
  --drp-motion-drawer: 560ms;
}

/* One shared menu on desktop, tablet and mobile — the WP flat nav is removed. */
.drp-site-header .drp-header-inner {
  grid-template-columns: minmax(0,1fr) auto auto;
  gap: clamp(16px,2.8vw,46px);
}
.drp-site-header .drp-primary-nav { display: none !important; }
.drp-site-header .drp-menu-toggle {
  grid-column: 3;
  justify-self: end;
  align-items: center;
  display: inline-flex;
  gap: 16px;
  min-height: 50px;
  padding: 9px 15px 9px 20px;
  border: 1px solid rgba(113,85,51,.28);
  background: transparent;
  color: #292017;
  cursor: pointer;
  font-family: var(--drp-sans);
  font-size: .67rem;
  font-weight: 700;
  letter-spacing: .19em;
  text-transform: uppercase;
  transition: background .35s ease, border-color .35s ease, color .35s ease;
}
.drp-site-header .drp-menu-toggle:hover,
.drp-site-header .drp-menu-toggle:focus-visible {
  border-color: #a07a4c;
  background: #221b16;
  color: #f7e7d2;
}
.drp-menu-toggle-lines {display:grid;gap:6px;width:29px;justify-items:end;}
.drp-menu-toggle-lines span {
  display:block;
  height:1px;
  width:100%;
  background:currentColor;
  transform-origin: right center;
  transition: transform .45s var(--drp-motion-ease), width .45s var(--drp-motion-ease);
}
.drp-menu-toggle-lines span:last-child { width:63%; }
.drp-menu-toggle:hover .drp-menu-toggle-lines span:first-child {width:63%;}
.drp-menu-toggle:hover .drp-menu-toggle-lines span:last-child {width:100%;}
.drp-site-header .drp-header-cta { grid-column:2;grid-row:1; }
.drp-site-header .drp-brand,
.drp-site-header .drp-custom-logo {grid-column:1;grid-row:1;justify-self:start;}

/* Menu overlay and panel: the hidden attribute is only set after close transition. */
.drp-mobile-overlay {
  display: block;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  background: rgba(8,7,6,.75);
  -webkit-backdrop-filter: blur(0px);
  backdrop-filter: blur(0px);
  transition: opacity 470ms ease, backdrop-filter 470ms ease, visibility 470ms ease;
}
.drp-mobile-overlay.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
}
.drp-mobile-drawer {
  display: flex;
  width: min(640px,100%);
  max-width:100%;
  overflow: hidden;
  isolation: isolate;
  transform:translate3d(106%,0,0);
  visibility: hidden;
  pointer-events: none;
  background: radial-gradient(circle at 88% 18%,rgba(158,118,66,.13) 0,transparent 32%),
              linear-gradient(160deg,#211c17 0%,#100e0d 59%,#0b0908 100%);
  border-left: 1px solid rgba(201,164,111,.43);
  box-shadow: -30px 0 90px rgba(0,0,0,.42);
  transition: transform var(--drp-motion-drawer) var(--drp-motion-ease),
              visibility var(--drp-motion-drawer) step-end;
  will-change: transform;
}
.drp-mobile-drawer::before {
  content:"";
  position:absolute;
  z-index:3;
  pointer-events:none;
  inset:0 auto 0 0;
  width:2px;
  background:linear-gradient(180deg,transparent,#e1be87 25%,#856137 67%,transparent);
  transform:scaleY(0);
  transform-origin:top;
  transition:transform 790ms var(--drp-motion-ease) 75ms;
}
.drp-mobile-drawer.is-active {
  visibility:visible;
  pointer-events:auto;
  transform:translate3d(0,0,0);
  transition: transform var(--drp-motion-drawer) var(--drp-motion-ease),visibility 0s step-start;
}
.drp-mobile-drawer.is-active::before { transform:scaleY(1); }
.drp-mobile-drawer__head {
  min-height:100px;
  padding: 20px clamp(24px,4vw,42px);
  background: rgba(13,11,10,.42);
  position:relative;
}
.drp-mobile-drawer__head::after {
  content:"";
  position:absolute;
  inset:auto 0 -1px 0;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(207,175,125,.62),transparent);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform 750ms var(--drp-motion-ease) 180ms;
}
.drp-mobile-drawer.is-active .drp-mobile-drawer__head::after {transform:scaleX(1);}
.drp-mobile-drawer__identity {display:flex;gap:17px;align-items:center;min-width:0;}
.drp-mobile-drawer__mark {width:30px;height:48px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 1px 15px rgba(185,135,69,.24));}
.drp-mobile-drawer__name {font-size:clamp(1.28rem,2.4vw,1.75rem);white-space:nowrap;}
.drp-mobile-drawer__name small {letter-spacing:.13em;}
.drp-mobile-drawer__close {
  flex:0 0 46px;
  width:46px;
  height:46px;
  border:1px solid rgba(225,191,142,.42);
  background:rgba(255,255,255,.02);
  transition:background .35s ease,border-color .35s ease,transform .4s var(--drp-motion-ease);
}
.drp-mobile-drawer__close:hover,
.drp-mobile-drawer__close:focus-visible {
  background: rgba(201,166,114,.12);
  border-color:#d8b481;
  transform:rotate(90deg);
}
.drp-mobile-drawer__body { padding: clamp(24px,3.5vw,43px) clamp(24px,4vw,46px); }
.drp-mobile-drawer__intro {padding-bottom:clamp(12px,2vw,23px);}
.drp-mobile-drawer__intro .drp-mobile-drawer__eyebrow {margin:0 0 18px;color:#c6a071;}
.drp-mobile-drawer__statement {
  max-width: 380px;
  margin:0;
  font-family:var(--drp-serif);
  font-size:clamp(2.1rem,4vw,3.35rem);
  line-height:1;
  letter-spacing:-.04em;
  color:#f3ebe1;
}
.drp-mobile-drawer__statement em{font-weight:400;color:#c8a675;}
.drp-mobile-menu-item {border-bottom-color:rgba(206,180,140,.19);}
.drp-mobile-menu-branch summary {
  min-height:63px;
  color:#f5eee5;
  transition:color .26s ease,padding-left .36s var(--drp-motion-ease);
}
.drp-mobile-menu-branch summary:hover,
.drp-mobile-menu-branch summary:focus-visible,
.drp-mobile-menu-branch[open] > summary {color:#e0bc88;}
.drp-mobile-menu-branch summary:hover {padding-left:8px;}
.drp-mobile-menu-branch .drp-mobile-chevron {transition:transform .38s var(--drp-motion-ease),color .26s;}
.drp-mobile-menu-children {overflow:hidden;}
.drp-mobile-menu-list--level-0 > .drp-mobile-menu-item > .drp-mobile-menu-link {
  font:400 clamp(1.5rem,3.6vw,2rem)/1.08 var(--drp-serif);
}
.drp-mobile-menu-link,
.drp-mobile-overview {
  transition:color .26s ease,transform .36s var(--drp-motion-ease);
}
.drp-mobile-menu-link:hover,
.drp-mobile-overview:hover {transform:translateX(6px);}
.drp-mobile-drawer__foot {padding:18px clamp(24px,4vw,46px) calc(18px + env(safe-area-inset-bottom,0px));}
.drp-mobile-drawer__cta {
  position:relative;
  overflow:hidden;
  transition:background .3s ease,transform .3s var(--drp-motion-ease),box-shadow .3s ease;
}
.drp-mobile-drawer__cta:hover,
.drp-mobile-drawer__cta:focus-visible {
  background:#dbb883;
  transform:translateY(-2px);
  box-shadow:0 10px 26px rgba(0,0,0,.28);
}
.drp-mobile-drawer__cta span {transition:transform .33s var(--drp-motion-ease);}
.drp-mobile-drawer__cta:hover span {transform:translate(3px,-3px);}
/* Distinct stagger for only the top-level menu items, no delays on navigation. */
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item {
  animation: drpMenuLineIn 720ms var(--drp-motion-ease) both;
}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(1){animation-delay:95ms;}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(2){animation-delay:155ms;}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(3){animation-delay:215ms;}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(4){animation-delay:275ms;}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(5){animation-delay:335ms;}
.drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item:nth-child(6){animation-delay:395ms;}
@keyframes drpMenuLineIn {
  from {opacity:0;transform:translate3d(0,17px,0);}
  to {opacity:1;transform:translate3d(0,0,0);}
}

/* Micro-interactions: subtle gold light travel, no layout shift. */
.drp-button,.drpa-button {
  isolation:isolate;
  position:relative;
  overflow:hidden;
  transition: transform .35s var(--drp-motion-ease),background .35s ease,
              color .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.drp-button::before,.drpa-button::before {
  content:"";
  position:absolute;
  inset:-22% auto -22% -55%;
  width:40%;
  pointer-events:none;
  z-index:0;
  transform:skewX(-23deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);
  transition:left .82s var(--drp-motion-ease);
}
.drp-button > span,.drpa-button > span,
.drp-home14-textlink > span,.drp-text-link > span {
  display:inline-block;
  transition:transform .36s var(--drp-motion-ease);
}
.drp-button:focus-visible,.drpa-button:focus-visible,.drp-menu-toggle:focus-visible {
  outline:2px solid #b68b53;
  outline-offset:4px;
}
@media(hover:hover) {
  .drp-button:hover,.drpa-button:hover{ transform:translateY(-2px);box-shadow:0 12px 32px rgba(89,59,20,.20); }
  .drp-button:hover::before,.drpa-button:hover::before {left:130%;}
  .drp-button:hover > span,.drpa-button:hover > span,
  .drp-home14-textlink:hover > span,.drp-text-link:hover > span {transform:translateX(5px);}
  .drpa-featured__card img,.drp-procedure-card__media img,
  .drp-article-card__media img {transition:transform .85s var(--drp-motion-ease);}
  .drpa-featured__card:hover img,.drp-procedure-card:hover img,.drp-article-card:hover img {transform:scale(1.045);}
  .drpa-item .drpa-item__arrow,.drp-procedure-card .drp-arrow {
    transition: transform .42s var(--drp-motion-ease),color .35s ease;
  }
  .drpa-item:hover .drpa-item__arrow {transform:translate(4px,-4px);}
  .drp-procedure-card:hover .drp-arrow {transform:translateX(5px);}
  .drp-home14-textlink {transition:border-color .3s ease,color .3s ease,letter-spacing .4s var(--drp-motion-ease);}
  .drp-home14-textlink:hover {letter-spacing:.115em;border-color:#986e36;}
}

/* Reveal uses JS only for elements below the viewport, keeping HTML visible without JS. */
.drp-reveal-pending {opacity:0;transform:translate3d(0,22px,0);}
.drp-reveal-pending.drp-reveal-visible {
  opacity:1;
  transform:translate3d(0,0,0);
  transition:opacity 830ms var(--drp-motion-ease),transform 830ms var(--drp-motion-ease);
}

@media(max-width:820px) {
  .drp-site-header .drp-header-inner{grid-template-columns:minmax(0,1fr) auto;}
  .drp-site-header .drp-header-cta{display:none;}
  .drp-site-header .drp-menu-toggle{grid-column:2;}
  .drp-mobile-drawer {width:min(100%,540px);}
}
@media(max-width:520px) {
  .drp-site-header .drp-menu-toggle{min-height:46px;padding:8px 12px;gap:10px;}
  .drp-site-header .drp-menu-toggle-label {display:inline-block;font-size:.61rem;}
  .drp-menu-toggle-lines{width:24px;}
  .drp-mobile-drawer{width:100%;border-left:0;}
  .drp-mobile-overlay.is-active{backdrop-filter:none;-webkit-backdrop-filter:none;}
  .drp-mobile-drawer__head{min-height:82px;padding:15px 20px;}
  .drp-mobile-drawer__name{font-size:1.33rem;}
  .drp-mobile-drawer__mark{width:25px;height:40px;}
  .drp-mobile-drawer__identity{gap:12px;}
  .drp-mobile-drawer__body {padding:25px 25px;}
  .drp-mobile-drawer__intro {padding-bottom:17px;}
  .drp-mobile-drawer__statement{font-size:2.25rem;}
  .drp-mobile-drawer__foot{padding-inline:21px;}
}
@media(max-width:360px){
  .drp-site-header .drp-menu-toggle-label{display:none;}
  .drp-site-header .drp-menu-toggle{padding-inline:12px;}
  .drp-mobile-drawer__name{font-size:1.18rem;}
  .drp-mobile-drawer__name small{font-size:.48rem;}
  .drp-mobile-drawer__head{padding-inline:15px;}
  .drp-mobile-drawer__body{padding-inline:18px;}
  .drp-mobile-drawer__foot{padding-inline:18px;}
}
@media(prefers-reduced-motion:reduce){
  .drp-mobile-overlay,.drp-mobile-drawer,.drp-mobile-drawer::before,.drp-mobile-drawer__head::after,
  .drp-menu-toggle-lines span,.drp-mobile-menu-link,.drp-mobile-overview,
  .drp-mobile-menu-branch summary,.drp-mobile-menu-branch .drp-mobile-chevron,
  .drp-mobile-drawer__close,.drp-button,.drpa-button,
  .drp-button::before,.drpa-button::before,.drp-button > span,.drpa-button > span,
  .drp-reveal-pending.drp-reveal-visible {transition:none!important;animation:none!important;}
  .drp-reveal-pending {opacity:1!important;transform:none!important;}
  .drp-mobile-drawer.is-active .drp-mobile-menu-list--level-0 > .drp-mobile-menu-item {animation:none!important;}
}
@media print {
  .drp-site-header .drp-menu-toggle,.drp-mobile-drawer,.drp-mobile-overlay {display:none!important;}
}
