html{background:var(--warm-sand-soft)}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--text);
  background:var(--warm-sand-soft);
  line-height:1.62;
  -webkit-font-smoothing:antialiased;
}
body::selection{background:rgba(240,100,73,.23)}
h1,h2,h3,h4{font-family:var(--font-heading);line-height:1.04;letter-spacing:-.038em;color:var(--pantura-navy)}
h1{font-size:clamp(2.65rem,7vw,5.25rem)}
h2{font-size:clamp(1.85rem,4.3vw,3rem)}
h3{font-size:1.25rem}
p{max-width:72ch}
a{transition:opacity .18s ease,color .18s ease,background .18s ease}
.container{width:min(calc(100% - 2rem),var(--container));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:0}.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.75rem;z-index:9999}
.muted{color:var(--muted)}
.stack{display:grid;gap:1rem}
.two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(1.5rem,4vw,3rem)}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.15rem}

.site-header{
  position:sticky;
  top:0;
  z-index:100;
  padding:.7rem 0;
  background:var(--warm-sand-soft);
  border-bottom:1px solid rgba(23,50,77,.08);
}
.nav-wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:62px;
  gap:1rem;
  padding:.55rem .8rem .55rem 1rem;
  background:#fff;
  border:1px solid rgba(23,50,77,.12);
  border-radius:999px;
  box-shadow:0 8px 24px rgba(23,50,77,.06);
}
.brand-lockup{display:flex;align-items:center;text-decoration:none;min-width:0}
.brand-logo{display:block;width:auto;height:31px;object-fit:contain}
.site-nav{display:flex;align-items:center;gap:.25rem}
.site-nav>a:not(.button){text-decoration:none;font-weight:700;font-size:.86rem;padding:.65rem .68rem;border-radius:999px;color:var(--pantura-navy)}
.site-nav>a:not(.button):hover{background:var(--sea-mist)}
.site-nav .button{min-height:40px;padding:.65rem .95rem}
.nav-toggle{display:none;background:#fff;border:1px solid var(--border);border-radius:999px;padding:.55rem .85rem;color:var(--pantura-navy);font-weight:800}

.hero{
  position:relative;
  overflow:hidden;
  padding:clamp(4.8rem,9vw,7.8rem) 0 0;
  background:
    radial-gradient(circle at 82% 16%,rgba(46,120,166,.28),transparent 26rem),
    radial-gradient(circle at 12% 88%,rgba(240,100,73,.18),transparent 24rem),
    linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));
  color:#fff;
}
.hero::after{content:"";position:absolute;right:-10rem;bottom:-12rem;width:36rem;height:36rem;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 4rem rgba(255,255,255,.018),0 0 0 8rem rgba(255,255,255,.012)}
.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.75fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.hero h1{max-width:10ch;margin-top:.55rem;color:#fff;font-size:clamp(3.1rem,8vw,6.7rem);letter-spacing:-.065em}
.hero h1 .highlight{color:var(--sunset-gold)}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.69rem;font-weight:850;color:var(--arus-blue)}
.hero .eyebrow{color:#fff}
.hero-copy{font-size:clamp(1.02rem,1.7vw,1.2rem);margin-top:1.25rem;color:rgba(255,255,255,.78);max-width:58ch}
.actions{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.55rem}
.hero .button-secondary{color:#fff;border-color:rgba(255,255,255,.4)}
.hero .button-secondary:hover{background:rgba(255,255,255,.09);border-color:#fff}

.hero-feature{
  position:relative;
  min-height:320px;
  border-radius:var(--radius-2xl);
  border:2px solid var(--ria-coral);
  background:linear-gradient(145deg,rgba(46,120,166,.86),rgba(14,38,58,.98));
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  transform:rotate(1.2deg);
}
.hero-feature img{width:100%;height:100%;min-height:320px;object-fit:cover;display:block}
.hero-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(14,38,58,.92) 100%)}
.hero-feature-copy{position:absolute;left:1.35rem;right:1.35rem;bottom:1.25rem;z-index:2;color:#fff}
.hero-feature-copy h3{color:#fff;font-size:clamp(1.55rem,3vw,2.3rem);margin:.45rem 0 .3rem}
.hero-feature-copy p{color:rgba(255,255,255,.78);font-size:.9rem}
.hero-feature-empty{display:grid;place-items:end start;padding:1.5rem;min-height:320px}
.hero-feature-empty h3{color:#fff;font-size:2rem;max-width:12ch}

.hero-ribbon{position:relative;z-index:1;margin-top:clamp(3.2rem,6vw,5rem);border-top:1px solid rgba(255,255,255,.2)}
.hero-ribbon-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1rem 0;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.78)}
.hero-ribbon-inner span::before{content:"•";color:var(--sunset-gold);margin-right:.55rem}

.section{padding:clamp(3.75rem,7vw,6.5rem) 0}
.section-white{background:#fff}
.section-sand{background:var(--warm-sand-soft)}
.section-mist{background:linear-gradient(180deg,#EFF5F8,var(--sea-mist))}
.section-dark{background:linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));color:#fff}
.section-dark h2,.section-dark h3{color:#fff}
.section-dark p{color:rgba(255,255,255,.78)}
.section-head{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-end;margin-bottom:2rem}
.section-head h2{margin-top:.45rem}
.section-kicker{max-width:62ch;color:var(--muted);margin-top:.85rem}

.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.story-card{padding:1.5rem;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius-lg);background:rgba(255,255,255,.06)}
.story-card span{display:block;color:var(--sunset-gold);font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:.75rem}
.story-card h3{margin-bottom:.65rem}

.event-card{position:relative;transition:transform .2s ease,box-shadow .2s ease;border-color:rgba(23,50,77,.12)}
.event-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(23,50,77,.24)}
.event-card::before{content:"";display:block;aspect-ratio:16/9;background:linear-gradient(135deg,var(--pantura-navy),var(--arus-blue) 58%,var(--ria-coral));}
.event-card:has(>img)::before{display:none}
.event-card h3{margin-top:.6rem;font-size:1.35rem}
.event-meta{display:flex;flex-wrap:wrap;gap:.45rem .9rem;color:var(--muted);font-size:.85rem;margin:.75rem 0 1rem}
.event-meta span{display:inline-flex;align-items:center;gap:.35rem}
.event-meta span+span::before{content:"•";color:var(--sunset-gold);margin-right:.3rem}
.price{font-weight:850;color:var(--pantura-navy);font-family:var(--font-heading)}

.journey-steps{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.journey-steps-list{display:grid;gap:1.15rem}
.journey-step{display:grid;grid-template-columns:44px 1fr;gap:.9rem;align-items:start}
.journey-step-number{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font-family:var(--font-heading);font-weight:850;color:#fff;background:var(--arus-blue)}
.journey-step:nth-child(2) .journey-step-number{background:var(--ria-coral)}
.journey-step:nth-child(3) .journey-step-number{background:var(--sunset-gold);color:var(--deep-charcoal)}
.journey-step h3{font-size:1.05rem;margin-bottom:.2rem}
.journey-step p{font-size:.9rem;color:var(--muted)}

.brand-callout{position:relative;overflow:hidden;border-radius:var(--radius-2xl);background:linear-gradient(135deg,var(--pantura-navy-deep),var(--pantura-navy));color:#fff;padding:clamp(2rem,5vw,3.8rem)}
.brand-callout h2{color:#fff;max-width:12ch}
.brand-callout p{color:rgba(255,255,255,.74);max-width:58ch;margin-top:.8rem}
.brand-callout::after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-120px;bottom:-170px;background:var(--arus-blue);box-shadow:-90px -25px 0 0 rgba(46,120,166,.55),-155px -45px 0 0 rgba(242,181,68,.8),-215px -70px 0 0 rgba(240,100,73,.9)}
.brand-callout>*{position:relative;z-index:1}

.page-head{padding:clamp(3rem,6vw,5rem) 0 2.5rem}
.page-head h1{margin-top:.45rem;font-size:clamp(2.65rem,6vw,4.5rem)}
.page-head>.event-meta{margin-top:1rem}
.catalog-head{background:linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));color:#fff;padding:clamp(3rem,6vw,5rem) 0 2.7rem}
.catalog-head h1{color:#fff}
.catalog-head .eyebrow{color:#fff}
.catalog-head .section-kicker{color:rgba(255,255,255,.72)}
.filter-panel{margin-top:1.7rem;padding:1rem;background:var(--warm-sand-soft);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}

.event-hero{padding:clamp(3rem,7vw,5.5rem) 0 3.2rem;background:linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));color:#fff;border-bottom:1px solid rgba(23,50,77,.08)}
.event-hero h1{max-width:15ch;margin:.6rem 0 .9rem;color:#fff}
.event-hero .hero-copy{color:rgba(255,255,255,.78)}
.event-hero .event-meta{color:rgba(255,255,255,.74)}
.event-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(330px,.72fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.ticket-stack{display:grid;gap:1rem;position:sticky;top:calc(var(--header-height) + 2rem)}
.ticket-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.35rem;box-shadow:var(--shadow-sm)}
.ticket-card-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:.8rem}
.ticket-card h3{margin:.2rem 0}

.prose{display:grid;gap:1.1rem;max-width:800px}
.prose h1{margin:.35rem 0 .5rem}
.prose h2{margin-top:1.9rem;font-size:clamp(1.65rem,3vw,2.25rem)}
.prose h3{margin-top:1rem}
.prose p{color:#46515D}
.prose strong{color:var(--pantura-navy)}
.prose-wide{max-width:none}

.brand-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2rem}
.brand-principle{padding:1.5rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff;box-shadow:var(--shadow-sm)}
.brand-principle strong{display:block;font-family:var(--font-heading);font-size:1.15rem;color:var(--pantura-navy);margin-bottom:.45rem}
.brand-principle p{color:var(--muted);font-size:.92rem}

.auth-page{padding:clamp(3.5rem,7vw,6rem) 0}
.auth-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1fr);max-width:980px;margin-inline:auto;background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow)}
.auth-intro{padding:clamp(2rem,5vw,3.2rem);background:linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));color:#fff;display:flex;flex-direction:column;justify-content:space-between;min-height:100%}
.auth-intro h2{color:#fff;margin:.6rem 0 1rem}
.auth-intro p{color:rgba(255,255,255,.74)}
.auth-intro .eyebrow{color:var(--sunset-gold)}
.auth-logo{width:min(190px,70%);height:auto;filter:brightness(0) invert(1);margin-bottom:1.2rem}
.auth-panel{padding:clamp(1.7rem,4vw,3rem)}
.auth-panel h1,.auth-panel h2{margin-top:.4rem}
.auth-meta{margin-top:1.2rem;color:var(--muted);font-size:.92rem}

.contact-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:clamp(1.5rem,5vw,4rem);align-items:start}
.contact-note{padding:1.5rem;background:var(--pantura-navy);color:#fff;border-radius:var(--radius-lg)}
.contact-note h3{color:#fff;margin-bottom:.6rem}.contact-note p{color:rgba(255,255,255,.75)}

.faq-list{display:grid;gap:.75rem;margin-top:2rem}
.faq-list details{padding:0;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;overflow:hidden;box-shadow:var(--shadow-sm)}
.faq-list summary{list-style:none;padding:1.15rem 1.25rem;display:flex;justify-content:space-between;gap:1rem}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";font-family:var(--font-heading);font-size:1.2rem;color:var(--arus-blue)}
.faq-list details[open] summary::after{content:"–"}
.faq-list details p{padding:0 1.25rem 1.25rem;color:var(--muted)}

.success-card{max-width:800px;margin-inline:auto;background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);padding:clamp(1.7rem,5vw,3rem);box-shadow:var(--shadow)}
.success-mark{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;background:var(--arus-blue);color:#fff;font-weight:900;font-size:1.7rem;margin-bottom:1.2rem}

.ticket-panel{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--radius-xl);padding:clamp(1.4rem,4vw,2.2rem);box-shadow:var(--shadow);overflow:hidden}
.ticket-panel::before{content:"";display:block;height:6px;position:absolute;inset:0 0 auto;background:linear-gradient(90deg,var(--pantura-navy),var(--arus-blue),var(--ria-coral),var(--sunset-gold))}
.ticket-logo{height:36px;width:auto;display:block}
.ticket-panel hr{border:0;border-top:1px solid var(--border);margin:1rem 0 1.25rem}
.ticket-panel h2{margin:.3rem 0 .55rem}
.qr-box{width:min(260px,100%);aspect-ratio:1;background:#fff;border:1px solid var(--border);display:grid;place-items:center;margin:1.4rem 0;padding:.75rem;border-radius:1rem}
.ticket-security{padding:1rem;border-radius:.85rem;background:var(--sea-mist);color:var(--pantura-navy);font-size:.87rem}

.scanner-view{aspect-ratio:4/3;background:#0b1118;border-radius:1rem;overflow:hidden;border:1px solid var(--border)}
.scanner-view video{width:100%;height:100%;object-fit:cover}

.section>.container>h1[style],.section>.container>.eyebrow+h1[style]{margin-top:.35rem}
.section>.container>.alert{margin-top:1rem}
.section>.container>.two-col{margin-top:2rem}
.section h2+form.form-grid{margin-top:1rem}
.section .card+.card{margin-top:0}

.site-footer{
  background:
    radial-gradient(circle at 12% 0%,rgba(46,120,166,.22),transparent 24rem),
    linear-gradient(150deg,var(--pantura-navy-deep),var(--pantura-navy));
  color:#fff;
  padding:3.4rem 0 1.25rem;
  border-top:1px solid rgba(255,255,255,.08);
}
.footer-logo{
  height:38px;
  width:auto;
  display:block;
  object-fit:contain;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.4fr .6fr .6fr;
  gap:2rem;
}
.footer-copy{
  margin-top:.9rem;
  color:rgba(255,255,255,.72);
  font-size:.9rem;
  max-width:38ch;
}
.footer-title{
  font-size:.7rem;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:var(--sunset-gold);
  font-weight:850;
  margin-bottom:.8rem;
}
.footer-grid nav{
  display:grid;
  gap:.55rem;
  align-content:start;
}
.footer-grid a{
  color:#fff;
  text-decoration:none;
  font-size:.9rem;
}
.footer-grid a:hover{
  color:var(--sunset-gold);
}
.footer-bottom{
  margin-top:2.3rem;
  padding-top:1rem;
  border-top:1px solid rgba(255,255,255,.16);
  display:flex;
  justify-content:space-between;
  gap:1rem;
  color:rgba(255,255,255,.62);
  font-size:.78rem;
}
.footer-bottom strong{
  color:var(--sunset-gold);
  font-family:var(--font-heading);
  letter-spacing:-.01em;
}

@media(max-width:960px){
  .hero-grid,.event-layout,.auth-shell,.contact-grid,.journey-steps{grid-template-columns:1fr}
  .hero-feature{max-width:650px}
  .ticket-stack{position:static}
  .brand-principles,.story-grid{grid-template-columns:1fr}
  .auth-intro{min-height:auto}
}
@media(max-width:820px){
  .grid-3,.two-col{grid-template-columns:1fr}
  .site-header{padding:.55rem 0}
  .nav-wrap{border-radius:1.2rem;min-height:58px}
  .brand-logo{height:27px}
  .site-nav{display:none;position:absolute;left:1rem;right:1rem;top:calc(var(--header-height) + 2px);background:#fff;padding:.75rem;border:1px solid var(--border);border-radius:1rem;box-shadow:var(--shadow);align-items:stretch;flex-direction:column}
  .site-nav.is-open{display:flex}
  .site-nav>a:not(.button){padding:.8rem .9rem}
  .site-nav .button{width:100%}
  .nav-toggle{display:block}
  .section-head,.footer-bottom{align-items:flex-start;flex-direction:column}
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-grid>div:first-child{grid-column:1/-1}
  .hero-ribbon-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:520px){
  .container{width:min(calc(100% - 1.25rem),var(--container))}
  .hero{padding-top:3.7rem}
  .hero h1{font-size:clamp(3rem,16vw,4.4rem)}
  .page-head h1{font-size:2.55rem}
  .auth-panel,.auth-intro{padding:1.35rem}
  .footer-grid{grid-template-columns:1fr}
  .footer-grid>div:first-child{grid-column:auto}
  .actions .button{flex:1 1 auto}
  .ticket-card-top{flex-direction:column}
  .hero-ribbon-inner{grid-template-columns:1fr}
}

.event-hero-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(340px,.78fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.event-cover{min-height:330px;border-radius:var(--radius-2xl);overflow:hidden;border:2px solid var(--sunset-gold);box-shadow:var(--shadow-lg);background:linear-gradient(135deg,var(--arus-blue),var(--pantura-navy-deep));transform:rotate(.7deg)}
.event-cover img{width:100%;height:100%;min-height:330px;object-fit:cover;display:block}
.event-cover-empty{display:grid;place-items:end start;padding:1.5rem;color:#fff;background:linear-gradient(135deg,var(--arus-blue),var(--pantura-navy-deep) 62%,var(--ria-coral))}
.event-cover-empty strong{display:block;margin-top:.7rem;font-family:var(--font-heading);font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.05;color:#fff;max-width:12ch}
@media(max-width:960px){.event-hero-grid{grid-template-columns:1fr}.event-cover{max-width:700px;min-height:260px}.event-cover img{min-height:260px}}

/* =========================================================
   PANTURIA HOME — PREMIUM FIRST IMPRESSION
   ========================================================= */
.home-hero{
  position:relative;
  isolation:isolate;
  min-height:calc(100svh - var(--header-height));
  overflow:hidden;
  background:
    radial-gradient(circle at 78% 18%,rgba(46,120,166,.28),transparent 25rem),
    radial-gradient(circle at 12% 88%,rgba(240,100,73,.16),transparent 22rem),
    linear-gradient(145deg,#0b2234 0%,var(--pantura-navy-deep) 42%,var(--pantura-navy) 100%);
  color:#fff;
}
.premium-hero{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:clamp(3.2rem,6vw,5.6rem) 0 clamp(4.3rem,7vw,6.5rem);
}
.premium-hero-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.78fr);
  gap:clamp(2rem,5vw,5.4rem);
  align-items:center;
}
.premium-hero-copy{min-width:0}
.hero-brand-stage{
  position:relative;
  width:min(100%,680px);
  padding-bottom:clamp(1.1rem,2vw,1.75rem);
}
.hero-brand-stage::after{
  content:"";
  display:block;
  width:min(100%,620px);
  height:1px;
  margin-top:1rem;
  background:linear-gradient(90deg,rgba(242,181,68,.9),rgba(242,181,68,.18),transparent);
}
.hero-brand-logo{
  display:block;
  width:min(100%,640px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 16px 34px rgba(0,0,0,.14));
}
.premium-slides{
  position:relative;
  min-height:190px;
  max-width:680px;
  display:grid;
  align-items:start;
}
.premium-slide{
  grid-area:1/1;
  opacity:0;
  transform:translateY(12px);
  pointer-events:none;
  transition:opacity .45s ease,transform .45s ease;
}
.premium-slide.is-active{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.premium-slide h1{
  max-width:14ch;
  margin:0;
  color:#fff;
  font-size:clamp(2.2rem,4.2vw,4.5rem);
  letter-spacing:-.055em;
  line-height:.98;
}
.premium-slide p{
  margin:1rem 0 0;
  max-width:590px;
  color:rgba(255,255,255,.9);
  font-size:clamp(1rem,1.55vw,1.2rem);
  line-height:1.55;
}
.premium-hero-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1.25rem;
  max-width:680px;
  margin-top:.55rem;
  padding-top:1.25rem;
}
.premium-hero-actions .actions{margin:0}
.premium-secondary{
  color:#fff;
  border-color:rgba(255,255,255,.34);
}
.premium-secondary:hover{
  color:#fff;
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.72);
}
.premium-pager{
  display:flex;
  align-items:center;
  gap:.55rem;
  flex:0 0 auto;
}
.premium-dot{
  appearance:none;
  width:9px;
  height:9px;
  border:0;
  border-radius:999px;
  padding:0;
  background:rgba(255,255,255,.24);
  cursor:pointer;
  transition:width .2s ease,background .2s ease,transform .2s ease;
}
.premium-dot:hover{transform:scale(1.08)}
.premium-dot.is-active{
  width:34px;
  background:var(--sunset-gold);
}
.premium-hero-visual{
  position:relative;
  min-width:0;
}
.premium-event-frame{
  position:relative;
  display:block;
  text-decoration:none;
  overflow:hidden;
  border-radius:2.3rem;
  border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.07);
  box-shadow:0 28px 80px rgba(0,0,0,.24);
  backdrop-filter:blur(8px);
  transform:rotate(1.1deg);
  transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease;
}
.premium-event-frame:hover{
  transform:rotate(0) translateY(-4px);
  border-color:rgba(242,181,68,.5);
  box-shadow:0 34px 94px rgba(0,0,0,.3);
}
.premium-event-photo{
  position:relative;
  aspect-ratio:4/5;
  min-height:430px;
  overflow:hidden;
  background:linear-gradient(145deg,var(--arus-blue),var(--pantura-navy-deep) 60%,var(--ria-coral));
}
.premium-event-photo::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 42%,rgba(6,20,31,.12) 58%,rgba(6,20,31,.96) 100%);
}
.premium-event-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .6s cubic-bezier(.2,.7,.2,1);
}
.premium-event-frame:hover .premium-event-photo img{transform:scale(1.025)}
.premium-event-placeholder{
  width:100%;
  height:100%;
  min-height:430px;
  background:
    radial-gradient(circle at 74% 18%,rgba(242,181,68,.9) 0 7%,transparent 7.5%),
    radial-gradient(circle at 22% 72%,rgba(240,100,73,.92) 0 12%,transparent 12.5%),
    linear-gradient(145deg,var(--arus-blue),var(--pantura-navy-deep) 58%,var(--ria-coral));
}
.premium-event-meta{
  position:absolute;
  z-index:2;
  left:clamp(1.2rem,3vw,1.8rem);
  right:clamp(1.2rem,3vw,1.8rem);
  bottom:clamp(1.2rem,3vw,1.8rem);
  color:#fff;
}
.premium-event-kicker{
  display:block;
  margin-bottom:.5rem;
  color:var(--sunset-gold);
  font-size:.68rem;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.17em;
}
.premium-event-meta h2{
  margin:0;
  color:#fff;
  font-size:clamp(1.65rem,3vw,2.7rem);
  letter-spacing:-.045em;
}
.premium-event-meta p{
  margin:.55rem 0 0;
  color:rgba(255,255,255,.78);
  font-size:.9rem;
}
.premium-side-note{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
  margin-top:1rem;
  padding:.85rem .25rem 0;
  color:rgba(255,255,255,.62);
  font-size:.72rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.premium-side-note p{margin:0;color:rgba(255,255,255,.75)}
.premium-side-note span{color:var(--sunset-gold);font-weight:800}
.premium-hero-art{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;
  z-index:0;
}
.premium-route{
  position:absolute;
  inset:auto -4% -10% -4%;
  width:108%;
  height:92%;
  opacity:.72;
}
.route-line{
  fill:none;
  stroke-width:2.2;
  stroke-linecap:round;
  stroke-dasharray:10 13;
  animation:routeFlow 18s linear infinite;
}
.route-blue{stroke:rgba(46,120,166,.55)}
.route-gold{stroke:rgba(242,181,68,.38);animation-duration:24s}
.route-node{fill:var(--sunset-gold);filter:drop-shadow(0 0 8px rgba(242,181,68,.65))}
.node-2,.node-4{fill:var(--ria-coral);filter:drop-shadow(0 0 8px rgba(240,100,73,.55))}
@keyframes routeFlow{to{stroke-dashoffset:-260}}
.orb{
  position:absolute;
  display:block;
  border-radius:999px;
  filter:blur(.1px);
  opacity:.85;
}
.orb-coral{
  width:110px;
  height:110px;
  left:-32px;
  top:18%;
  background:radial-gradient(circle at 35% 35%,rgba(240,100,73,.56),rgba(240,100,73,.08) 62%,transparent 70%);
}
.orb-gold{
  width:88px;
  height:88px;
  right:31%;
  top:6%;
  background:radial-gradient(circle at 35% 35%,rgba(242,181,68,.45),rgba(242,181,68,.05) 66%,transparent 72%);
}
.orb-blue{
  width:180px;
  height:180px;
  right:-58px;
  bottom:12%;
  background:radial-gradient(circle at 38% 38%,rgba(46,120,166,.55),rgba(46,120,166,.06) 60%,transparent 73%);
}
.premium-scroll-mark{
  position:absolute;
  left:50%;
  bottom:1.15rem;
  z-index:3;
  transform:translateX(-50%);
  display:flex;
  align-items:center;
  gap:.7rem;
  color:rgba(255,255,255,.46);
  font-size:.61rem;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.premium-scroll-mark i{
  display:block;
  width:38px;
  height:1px;
  background:linear-gradient(90deg,var(--sunset-gold),rgba(255,255,255,.16));
}
.home-marquee{
  overflow:hidden;
  background:var(--sunset-gold);
  color:var(--deep-charcoal);
  border-top:1px solid rgba(31,39,50,.08);
  border-bottom:1px solid rgba(31,39,50,.08);
}
.home-marquee-track{
  display:flex;
  align-items:center;
  gap:1.15rem;
  width:max-content;
  padding:.82rem 0;
  font-family:var(--font-heading);
  font-size:.74rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  animation:marqueeMove 30s linear infinite;
}
.home-marquee-track span,.home-marquee-track b{white-space:nowrap}
.home-marquee-track b{font-weight:400}
@keyframes marqueeMove{to{transform:translateX(-50%)}}
.home-events{padding-top:clamp(4.2rem,8vw,7.8rem)}
.editorial-head{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.6fr);
  gap:2rem;
  align-items:end;
  margin-bottom:2.2rem;
}
.editorial-head h2{
  margin:.4rem 0 0;
  font-size:clamp(2.5rem,5.5vw,4.7rem);
  max-width:10ch;
}
.editorial-head-side{
  display:grid;
  gap:1rem;
  justify-items:start;
}
.editorial-head-side p{
  margin:0;
  color:var(--muted);
  max-width:38ch;
}
.text-link{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  color:var(--pantura-navy);
  font-weight:800;
  text-decoration:none;
  border-bottom:1px solid rgba(23,50,77,.22);
  padding-bottom:.15rem;
}
.text-link span{transition:transform .18s ease}
.text-link:hover span{transform:translate(2px,-2px)}
.premium-event-grid{
  display:grid;
  grid-template-columns:1.25fr .875fr .875fr;
  gap:1.15rem;
  align-items:start;
}
.premium-card{
  min-width:0;
}
.premium-card-media{
  position:relative;
  display:block;
  overflow:hidden;
  border-radius:1.65rem;
  aspect-ratio:4/5;
  background:linear-gradient(145deg,var(--pantura-navy),var(--arus-blue));
}
.premium-card-featured .premium-card-media{aspect-ratio:5/4}
.premium-card-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .5s ease;
}
.premium-card-media:hover img{transform:scale(1.025)}
.premium-card-placeholder{
  width:100%;
  height:100%;
  background:linear-gradient(145deg,var(--pantura-navy),var(--arus-blue) 58%,var(--ria-coral));
}
.premium-card-index{
  position:absolute;
  top:.85rem;
  right:.85rem;
  display:grid;
  place-items:center;
  min-width:42px;
  height:42px;
  padding:0 .7rem;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--pantura-navy);
  font-family:var(--font-heading);
  font-weight:800;
  font-size:.75rem;
}
.premium-card-body{padding:1.15rem .2rem 0}
.premium-card-label{
  color:var(--arus-blue);
  font-size:.68rem;
  font-weight:850;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.premium-card h3{margin:.45rem 0 0;font-size:clamp(1.2rem,2vw,1.65rem)}
.premium-card h3 a{color:inherit;text-decoration:none}
.premium-card-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem .75rem;
  margin:.75rem 0 .7rem;
  color:var(--muted);
  font-size:.84rem;
}
.premium-card-meta span+span::before{content:"•";color:var(--sunset-gold);margin-right:.6rem}
.premium-card .price{margin:.3rem 0 .7rem}
.home-experience{
  position:relative;
  overflow:hidden;
  background:linear-gradient(140deg,#0d273b 0%,var(--pantura-navy) 62%,#163f5e 100%);
  color:#fff;
  padding:clamp(5rem,9vw,9rem) 0;
}
.experience-grid{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(320px,.65fr);
  gap:clamp(2rem,7vw,7rem);
  align-items:end;
}
.experience-eyebrow{color:var(--sunset-gold)}
.experience-heading h2{
  margin:.7rem 0 0;
  color:#fff;
  font-size:clamp(3rem,7vw,7rem);
  line-height:.88;
  letter-spacing:-.065em;
}
.experience-heading h2 span{color:var(--sunset-gold)}
.experience-copy{
  padding-bottom:.45rem;
}
.experience-english{
  margin:0;
  max-width:14ch;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.65rem,3.5vw,3.1rem);
  font-weight:800;
  line-height:1.02;
  letter-spacing:-.04em;
}
.experience-id{
  margin:1.1rem 0 1.55rem;
  color:rgba(255,255,255,.78);
  max-width:35ch;
  font-size:1rem;
}
.text-link-light{color:#fff;border-color:rgba(255,255,255,.24)}
.experience-supergraphic{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:0;
}
.experience-arc{
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.08);
}
.arc-one{
  width:620px;height:620px;right:-250px;top:-220px;
  box-shadow:0 0 0 72px rgba(46,120,166,.06),0 0 0 144px rgba(46,120,166,.035);
}
.arc-two{
  width:340px;height:340px;left:-180px;bottom:-130px;
  border-color:rgba(240,100,73,.18);
  box-shadow:0 0 0 48px rgba(240,100,73,.045);
}
.arc-three{
  width:160px;height:160px;right:18%;bottom:10%;
  border-color:rgba(242,181,68,.2);
}
.home-moment-strip{padding:clamp(4.5rem,8vw,7.5rem) 0}
.moment-strip-grid{
  display:grid;
  grid-template-columns:90px minmax(0,1fr) minmax(260px,.45fr);
  gap:clamp(1.2rem,4vw,3.2rem);
  align-items:start;
}
.moment-strip-number{
  color:var(--ria-coral);
  font-family:var(--font-heading);
  font-size:clamp(2rem,4vw,3rem);
  font-weight:800;
  line-height:1;
}
.moment-strip-grid h2{
  margin:.45rem 0 0;
  max-width:18ch;
  font-size:clamp(2rem,4vw,3.5rem);
}
.moment-strip-copy{
  padding-top:1.7rem;
  color:var(--muted);
}
.moment-strip-copy p{margin:0}
.home-final-cta{padding-top:0;padding-bottom:clamp(5rem,8vw,7.5rem)}
.premium-final-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(2.5rem,7vw,5.6rem);
  border-radius:2.4rem;
  background:linear-gradient(145deg,var(--pantura-navy-deep),var(--pantura-navy));
  color:#fff;
  box-shadow:var(--shadow-lg);
}
.premium-final-card>*{position:relative;z-index:2}
.premium-final-logo{
  width:min(390px,72%);
  height:auto;
  display:block;
  margin-bottom:1.4rem;
}
.premium-final-card h2{
  margin:0;
  color:#fff;
  font-size:clamp(2.2rem,5vw,4.8rem);
}
.premium-final-card p{
  margin:.75rem 0 0;
  color:rgba(255,255,255,.78);
  font-size:1.05rem;
}
.premium-final-secondary{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.28);
  box-shadow:none;
}
.premium-final-secondary:hover{background:rgba(255,255,255,.08);border-color:#fff}
.premium-final-art{
  position:absolute;
  inset:0;
  z-index:0;
}
.premium-final-art::before,
.premium-final-art::after{
  content:"";
  position:absolute;
  border-radius:999px;
}
.premium-final-art::before{
  width:420px;height:420px;right:-150px;top:-150px;
  background:radial-gradient(circle at 38% 38%,rgba(242,181,68,.4),rgba(242,181,68,.04) 62%,transparent 70%);
}
.premium-final-art::after{
  width:340px;height:340px;right:10%;bottom:-210px;
  border:1px solid rgba(255,255,255,.1);
  box-shadow:0 0 0 52px rgba(46,120,166,.06),0 0 0 104px rgba(240,100,73,.035);
}
@media(max-width:1100px){
  .premium-hero-grid{grid-template-columns:1fr}
  .premium-hero-copy{max-width:820px}
  .hero-brand-logo{width:min(100%,700px)}
  .premium-hero-visual{max-width:720px}
  .premium-event-photo{aspect-ratio:16/10;min-height:340px}
  .premium-event-placeholder{min-height:340px}
  .premium-event-frame{transform:none}
  .premium-event-grid{grid-template-columns:1fr 1fr}
  .premium-card-featured{grid-column:1/-1}
  .premium-card-featured .premium-card-media{aspect-ratio:16/8}
}
@media(max-width:900px){
  .premium-hero{padding-top:2.8rem}
  .premium-slides{min-height:170px}
  .premium-hero-actions{align-items:flex-start;flex-direction:column}
  .premium-pager{order:-1}
  .editorial-head,.experience-grid,.moment-strip-grid{grid-template-columns:1fr}
  .moment-strip-number{font-size:1rem;letter-spacing:.14em}
  .moment-strip-copy{padding-top:0}
  .experience-copy{max-width:560px}
}
@media(max-width:700px){
  .premium-hero{min-height:auto;padding:2.3rem 0 4.6rem}
  .hero-brand-stage{padding-bottom:1rem}
  .hero-brand-logo{width:min(100%,520px)}
  .premium-slide h1{font-size:clamp(2rem,10vw,3.35rem)}
  .premium-slides{min-height:190px}
  .premium-hero-actions .actions{width:100%}
  .premium-hero-actions .button{flex:1 1 100%}
  .premium-event-photo{min-height:280px;aspect-ratio:4/5}
  .premium-event-placeholder{min-height:280px}
  .premium-side-note{align-items:flex-start;flex-direction:column}
  .premium-scroll-mark{display:none}
  .premium-event-grid{grid-template-columns:1fr}
  .premium-card-featured{grid-column:auto}
  .premium-card-featured .premium-card-media,.premium-card-media{aspect-ratio:16/11}
  .experience-heading h2{font-size:clamp(3rem,15vw,5.4rem)}
  .experience-english{font-size:clamp(1.65rem,9vw,2.5rem)}
  .premium-final-logo{width:min(350px,90%)}
}
@media(prefers-reduced-motion:reduce){
  .route-line,.home-marquee-track{animation:none}
  .premium-slide,.premium-event-photo img,.premium-event-frame,.premium-dot,.text-link span{transition:none}
}

/* =========================================================
   PANTURIA PREMIUM V3
   Strong-flow supergraphics, premium marquee, Cerita pages.
   Decorative graphics are intentionally high-contrast.
   ========================================================= */
.home-hero{
  background:linear-gradient(145deg,#0B2234 0%,var(--pantura-navy-deep) 38%,var(--pantura-navy) 100%);
}
.hero-brand-stage::after{display:none}
.hero-brand-logo{
  width:min(100%,700px);
  filter:drop-shadow(0 18px 38px rgba(0,0,0,.18));
}
.premium-hero-art{opacity:1}
.hero-flow-ribbons,
.hero-route-line{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:visible;
}
.flow-stroke,
.hero-route-line path{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.flow-blue{stroke:var(--arus-blue);stroke-width:34}
.flow-coral{stroke:var(--ria-coral);stroke-width:28}
.flow-gold{stroke:var(--sunset-gold);stroke-width:22}
.hero-route-line path{
  stroke:var(--warm-sand);
  stroke-width:7;
  opacity:.72;
}
.hero-flow-ribbons{transform:translateY(7%)}
.hero-route-line{transform:translateY(-4%)}
.premium-route,.orb{display:none!important}
.premium-hero-grid{z-index:2}
.premium-hero-copy{
  position:relative;
  padding:clamp(1.2rem,2vw,2rem) 0;
}
.premium-slide h1{max-width:15ch}
.premium-slide p{color:#fff}
.premium-event-frame{
  border:2px solid rgba(242,181,68,.88);
  background:var(--pantura-navy-deep);
}
.premium-side-note{
  padding:.95rem .15rem 0;
  border-top:1px solid rgba(255,255,255,.22);
}
.premium-side-note span{color:var(--sunset-gold)}
.premium-side-note p{color:#fff}

/* Premium moving brand rail — replaces the flat yellow strip. */
.brand-flow-marquee{
  position:relative;
  overflow:hidden;
  background:var(--pantura-navy-deep);
  color:var(--warm-sand);
  border-top:1px solid rgba(255,255,255,.1);
  border-bottom:1px solid rgba(23,50,77,.18);
}
.brand-flow-marquee::before{
  content:"";
  position:absolute;
  z-index:2;
  inset:0 auto 0 0;
  width:min(8vw,110px);
  background:linear-gradient(90deg,var(--pantura-navy-deep),transparent);
  pointer-events:none;
}
.brand-flow-marquee::after{
  content:"";
  position:absolute;
  z-index:2;
  inset:0 0 0 auto;
  width:min(8vw,110px);
  background:linear-gradient(270deg,var(--pantura-navy-deep),transparent);
  pointer-events:none;
}
.brand-flow-marquee-edge{
  position:absolute;
  inset:0 0 auto;
  height:5px;
  background:linear-gradient(90deg,var(--arus-blue) 0 34%,var(--ria-coral) 34% 67%,var(--sunset-gold) 67% 100%);
}
.brand-flow-track{
  display:flex;
  align-items:center;
  gap:1.35rem;
  width:max-content;
  padding:1.15rem 0 1rem;
  font-family:var(--font-heading);
  font-size:clamp(.75rem,1.2vw,.92rem);
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  animation:brandRail 34s linear infinite;
}
.brand-flow-track span{white-space:nowrap}
.brand-flow-track i{
  display:block;
  width:10px;
  height:10px;
  border-radius:999px;
  background:var(--sunset-gold);
  box-shadow:18px 0 0 var(--ria-coral),36px 0 0 var(--arus-blue);
  margin-right:28px;
}
@keyframes brandRail{to{transform:translateX(-50%)}}

/* Event cards: no decorative numbering. */
.premium-card-index,.moment-strip-number{display:none!important}
.premium-card-media{
  border:1px solid rgba(23,50,77,.12);
}

/* PANTURIA Experience: bold flow graphics inspired by route/current movement. */
.home-experience{
  background:var(--pantura-navy-deep);
  min-height:680px;
}
.experience-supergraphic,.experience-arc{display:none!important}
.experience-ribbons{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
.experience-ribbons svg{width:100%;height:100%;display:block}
.experience-flow{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.experience-flow-blue{stroke:var(--arus-blue);stroke-width:62}
.experience-flow-coral{stroke:var(--ria-coral);stroke-width:48}
.experience-flow-gold{stroke:var(--sunset-gold);stroke-width:38}
.experience-grid{z-index:2}
.experience-heading,
.experience-copy{
  position:relative;
  z-index:2;
}
.experience-heading h2{
  text-shadow:0 14px 40px rgba(0,0,0,.2);
}
.experience-id{color:#fff}

/* Stories preview */
.home-stories-preview{position:relative;overflow:hidden}
.stories-head h2{max-width:12ch}
.story-preview-grid,
.story-archive-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.15rem;
}
.story-preview-card,
.story-archive-card{
  background:#fff;
  border:1px solid rgba(23,50,77,.12);
  border-radius:1.7rem;
  overflow:hidden;
  box-shadow:var(--shadow-sm);
}
.story-preview-art,
.story-archive-media{
  position:relative;
  display:block;
  overflow:hidden;
  aspect-ratio:16/10;
  background:var(--pantura-navy);
}
.story-wave{
  position:absolute;
  display:block;
  left:-15%;
  width:130%;
  height:34%;
  border-radius:50%;
  transform:rotate(-8deg);
}
.story-wave-a{bottom:3%;background:var(--arus-blue)}
.story-wave-b{bottom:-7%;background:var(--ria-coral);transform:rotate(5deg)}
.story-wave-c{bottom:-17%;background:var(--sunset-gold);transform:rotate(-3deg)}
.story-tone-coral .story-preview-art,
.story-tone-coral .story-archive-media,
.story-tone-coral.story-detail-hero{background:var(--ria-coral)}
.story-tone-coral .story-wave-a{background:var(--pantura-navy)}
.story-tone-coral .story-wave-b{background:var(--sunset-gold)}
.story-tone-coral .story-wave-c{background:var(--arus-blue)}
.story-tone-gold .story-preview-art,
.story-tone-gold .story-archive-media,
.story-tone-gold.story-detail-hero{background:var(--sunset-gold)}
.story-tone-gold .story-wave-a{background:var(--pantura-navy)}
.story-tone-gold .story-wave-b{background:var(--arus-blue)}
.story-tone-gold .story-wave-c{background:var(--ria-coral)}
.story-tone-blue .story-preview-art,
.story-tone-blue .story-archive-media,
.story-tone-blue.story-detail-hero{background:var(--arus-blue)}
.story-tone-blue .story-wave-a{background:var(--sunset-gold)}
.story-tone-blue .story-wave-b{background:var(--ria-coral)}
.story-tone-blue .story-wave-c{background:var(--pantura-navy)}
.story-preview-body,
.story-archive-body{padding:1.35rem}
.story-category,
.story-archive-meta span{
  color:var(--arus-blue);
  font-size:.69rem;
  font-weight:850;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.story-preview-body h3,
.story-archive-body h2{
  margin:.5rem 0 .65rem;
}
.story-preview-body h3 a,
.story-archive-body h2 a{
  color:var(--pantura-navy);
  text-decoration:none;
}
.story-preview-body p,
.story-archive-body p{color:var(--muted);margin:0 0 1rem}
.story-archive-meta{
  display:flex;
  justify-content:space-between;
  gap:1rem;
  align-items:center;
}
.story-archive-meta time{color:var(--muted);font-size:.78rem}

/* Cerita archive */
.story-archive-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:460px;
  display:grid;
  align-items:center;
  background:var(--pantura-navy-deep);
  color:#fff;
}
.story-archive-art{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
}
.story-archive-art svg{width:100%;height:100%;display:block}
.archive-flow{fill:none;stroke-linecap:round;stroke-linejoin:round}
.archive-flow-blue{stroke:var(--arus-blue);stroke-width:56}
.archive-flow-coral{stroke:var(--ria-coral);stroke-width:44}
.archive-flow-gold{stroke:var(--sunset-gold);stroke-width:34}
.story-archive-hero-inner{position:relative;z-index:2;padding:4.5rem 0}
.story-archive-eyebrow{color:var(--sunset-gold)}
.story-archive-hero h1{
  color:#fff;
  max-width:12ch;
  margin:.6rem 0 .9rem;
  font-size:clamp(3rem,7vw,6.5rem);
  line-height:.92;
}
.story-archive-hero p{color:#fff;max-width:50ch;font-size:1.06rem}
.story-filter-row{
  display:flex;
  flex-wrap:wrap;
  gap:.55rem;
  margin-bottom:2rem;
}
.story-filter{
  display:inline-flex;
  padding:.62rem .9rem;
  border:1px solid rgba(23,50,77,.18);
  border-radius:999px;
  background:#fff;
  color:var(--pantura-navy);
  font-size:.82rem;
  font-weight:800;
}
.story-filter.is-active{background:var(--pantura-navy);color:#fff;border-color:var(--pantura-navy)}
.story-editorial-note{
  margin-top:2rem;
  padding:1.35rem 1.5rem;
  border-left:5px solid var(--sunset-gold);
  background:#fff;
  border-radius:0 1rem 1rem 0;
}
.story-editorial-note strong{color:var(--pantura-navy);font-family:var(--font-heading)}
.story-editorial-note p{margin:.35rem 0 0;color:var(--muted)}

/* Cerita detail */
.story-detail-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:520px;
  display:grid;
  align-items:end;
  color:#fff;
}
.story-detail-art{position:absolute;inset:0;z-index:0;overflow:hidden}
.story-detail-art .story-wave{height:38%;bottom:-8%}
.story-detail-heading{
  position:relative;
  z-index:2;
  padding:clamp(4rem,9vw,7rem) 0 clamp(3rem,6vw,5rem);
}
.story-detail-meta{
  display:flex;
  gap:1rem;
  align-items:center;
  color:#fff;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.story-detail-meta span{color:var(--sunset-gold)}
.story-tone-gold .story-detail-meta span{color:var(--pantura-navy)}
.story-detail-heading h1{
  color:#fff;
  max-width:11ch;
  margin:.75rem 0 .9rem;
  font-size:clamp(3rem,7vw,6.2rem);
  line-height:.93;
}
.story-tone-gold .story-detail-heading h1,
.story-tone-gold .story-detail-heading p,
.story-tone-gold .story-detail-meta{color:var(--pantura-navy)}
.story-detail-heading p{max-width:56ch;color:#fff;font-size:clamp(1rem,1.6vw,1.2rem)}
.story-reading-column{max-width:760px}
.story-reading-column>p{
  margin:0 0 1.35rem;
  font-size:clamp(1.03rem,1.5vw,1.15rem);
  line-height:1.8;
  color:#384654;
}
.story-detail-back{margin-top:2.2rem;padding-top:1.25rem;border-top:1px solid var(--border)}

/* Final CTA: clear, visible supergraphic. */
.premium-final-art{display:none!important}
.premium-final-ribbons{
  position:absolute;
  inset:0;
  z-index:0!important;
  overflow:hidden;
  pointer-events:none;
}
.premium-final-ribbons svg{width:100%;height:100%;display:block}
.final-flow{fill:none;stroke-linecap:round;stroke-linejoin:round}
.final-flow-blue{stroke:var(--arus-blue);stroke-width:52}
.final-flow-coral{stroke:var(--ria-coral);stroke-width:42}
.final-flow-gold{stroke:var(--sunset-gold);stroke-width:32}

@media(max-width:980px){
  .story-preview-grid,.story-archive-grid{grid-template-columns:1fr 1fr}
  .story-preview-card:last-child,.story-archive-card:last-child{grid-column:1/-1}
}
@media(max-width:700px){
  .flow-blue{stroke-width:26}
  .flow-coral{stroke-width:22}
  .flow-gold{stroke-width:18}
  .hero-route-line path{stroke-width:5;opacity:.62}
  .brand-flow-track{padding:1rem 0 .9rem}
  .experience-flow-blue{stroke-width:44}
  .experience-flow-coral{stroke-width:34}
  .experience-flow-gold{stroke-width:26}
  .story-preview-grid,.story-archive-grid{grid-template-columns:1fr}
  .story-preview-card:last-child,.story-archive-card:last-child{grid-column:auto}
  .story-archive-hero{min-height:400px}
  .story-archive-hero h1,.story-detail-heading h1{font-size:clamp(2.8rem,14vw,4.8rem)}
}
@media(prefers-reduced-motion:reduce){
  .brand-flow-track{animation:none}
}

/* =========================================================
   PANTURIA IMPLEMENTATION V4 — FINAL FRONTEND SYSTEM
   Readability-first supergraphics + media/event partner stage
   ========================================================= */

/* Global content clarity */
.eyebrow{color:var(--arus-blue)}
.section-dark .eyebrow,
.home-experience .eyebrow,
.submit-event-hero .eyebrow{color:var(--sunset-gold)}
.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Header / navigation */
.site-nav{gap:.18rem}
.site-nav>a:not(.button){padding:.62rem .58rem}
.nav-submit-event{white-space:nowrap}

/* ---------- Hero: three core supergraphics ---------- */
.hero-flow-ribbons,
.hero-route-line{display:none!important}

.premium-hero{
  min-height:calc(100svh - var(--header-height));
  padding:clamp(3.4rem,6vw,5.8rem) 0 clamp(5.2rem,8vw,7rem);
}
.premium-hero-art{z-index:0;overflow:hidden}
.premium-hero-grid{z-index:3}
.premium-hero-copy,
.premium-hero-visual{z-index:3}

/* 01 — ARUS LINE: route, direction, connection. Kept in the top-right safe zone. */
.hero-arus-line{
  position:absolute;
  top:1.5%;
  right:-3%;
  width:48%;
  height:31%;
  overflow:visible;
}
.hero-arus-line path{
  fill:none;
  stroke:var(--warm-sand);
  stroke-width:4;
  stroke-linecap:round;
  opacity:.9;
}
.hero-arus-line circle{fill:var(--sunset-gold)}
.hero-arus-line circle:last-child{fill:var(--ria-coral)}

/* 02 — RIA WAVE: collective energy. Lives below copy, never through it. */
.hero-ria-wave{
  position:absolute;
  left:-8%;
  bottom:-8%;
  width:83%;
  height:39%;
  overflow:visible;
}
.hero-ria-wave path{
  fill:none;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.ria-wave-blue{stroke:var(--arus-blue);stroke-width:60}
.ria-wave-coral{stroke:var(--ria-coral);stroke-width:46}
.ria-wave-gold{stroke:var(--sunset-gold);stroke-width:32}

/* 03 — HORIZON FRAME: place, horizon, meeting point. Frames visual column only. */
.hero-horizon-frame{
  position:absolute;
  top:15%;
  right:-11%;
  width:min(43vw,650px);
  aspect-ratio:1;
  border:2px solid rgba(244,232,214,.7);
  border-left-color:rgba(242,181,68,.92);
  border-radius:50%;
  box-shadow:0 0 0 54px rgba(46,120,166,.07),0 0 0 108px rgba(244,232,214,.035);
}
.hero-horizon-sun{
  position:absolute;
  right:24%;
  bottom:19%;
  width:64px;
  height:64px;
  border-radius:50%;
  background:var(--sunset-gold);
  box-shadow:0 0 46px rgba(242,181,68,.28);
}

.hero-brand-stage{
  width:min(100%,760px);
  padding-bottom:1rem;
}
.hero-brand-logo{width:min(100%,720px)}
.hero-fixed-tagline{
  margin:.6rem 0 0;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.35rem,2.4vw,2.25rem);
  font-weight:800;
  letter-spacing:.08em;
  line-height:1.05;
}
.premium-slides{
  min-height:158px;
  max-width:720px;
  margin-top:.8rem;
}
.premium-slide h1{
  max-width:21ch;
  font-size:clamp(1.65rem,3vw,3.05rem);
  line-height:1.03;
  letter-spacing:-.045em;
}
.premium-slide p{
  max-width:650px;
  margin-top:.85rem;
  color:rgba(255,255,255,.94);
}
.premium-hero-actions{margin-top:.15rem;max-width:720px}

/* Marquee: continuous, readable, and intentionally moving. */
.brand-flow-marquee{isolation:isolate}
.brand-flow-track{
  gap:1.55rem;
  padding:1.18rem 0 1.05rem;
  animation-duration:40s;
  will-change:transform;
}
.brand-flow-track span{color:var(--warm-sand);opacity:1}
.brand-flow-track i{flex:0 0 auto}

/* Event section receives Arus Line as a divider, not behind copy. */
.home-events{position:relative;overflow:hidden}
.home-events::before{
  content:"";
  position:absolute;
  right:-5%;
  top:1.8rem;
  width:32%;
  height:44px;
  border-top:3px solid var(--arus-blue);
  border-radius:50%;
  transform:rotate(-4deg);
  opacity:.85;
  pointer-events:none;
}
.home-events>.container{position:relative;z-index:1}

/* Experience: Ria Wave stays in lower visual zone; text gets clear navy field. */
.home-experience{
  min-height:620px;
  display:flex;
  align-items:center;
  padding:clamp(4.5rem,8vw,7rem) 0 clamp(10rem,15vw,13rem);
}
.experience-ribbons{
  top:auto;
  bottom:-4%;
  height:44%;
}
.experience-flow-blue{stroke-width:72}
.experience-flow-coral{stroke-width:54}
.experience-flow-gold{stroke-width:38}
.experience-grid{
  align-items:start;
  position:relative;
  z-index:3;
}
.experience-heading,
.experience-copy{
  background:transparent;
}
.experience-id{
  max-width:42ch;
  color:#fff;
  font-size:1.04rem;
  line-height:1.7;
}

/* Stories: Horizon shape is isolated to the decorative edge. */
.home-stories-preview::after{
  content:"";
  position:absolute;
  right:-120px;
  top:42px;
  width:310px;
  height:310px;
  border:2px solid rgba(46,120,166,.22);
  border-radius:50%;
  box-shadow:0 0 0 46px rgba(242,181,68,.08);
  pointer-events:none;
}
.home-stories-preview>.container{position:relative;z-index:2}

/* Cerita archive: decorative waves remain below heading safe area. */
.story-archive-art{
  top:auto!important;
  bottom:0!important;
  height:42%!important;
}
.story-archive-hero-inner{position:relative;z-index:3}

/* ---------- About ---------- */
.about-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(4rem,8vw,7rem) 0;
}
.about-hero-grid{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(340px,.75fr);
  gap:clamp(2rem,6vw,5.5rem);
  align-items:center;
}
.about-hero-copy h1{
  margin:.5rem 0 1.4rem;
  font-size:clamp(3rem,7vw,6rem);
}
.about-hero-copy p{color:#3f4d58}
.about-lead{
  color:var(--pantura-navy)!important;
  font-family:var(--font-heading);
  font-weight:700;
  font-size:clamp(1.2rem,2.2vw,1.65rem);
  line-height:1.45;
}
.about-wordmark-stage{
  padding:clamp(1.6rem,4vw,3rem);
  border-radius:2rem;
  background:var(--pantura-navy);
  box-shadow:var(--shadow-lg);
}
.about-wordmark-stage img{display:block;width:100%;height:auto}
.about-wordmark-stage span{
  display:block;
  margin-top:1.2rem;
  color:var(--sunset-gold);
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.18em;
}
.about-supergraphic{position:absolute;inset:0;pointer-events:none;z-index:0}
.about-arc{
  position:absolute;
  right:-9rem;
  top:-8rem;
  width:34rem;
  height:34rem;
  border-radius:50%;
  border:2px solid rgba(46,120,166,.3);
  box-shadow:0 0 0 55px rgba(242,181,68,.08);
}
.about-wave{
  position:absolute;
  left:-9%;
  bottom:-7rem;
  width:62%;
  height:8rem;
  border-radius:50%;
  transform:rotate(-6deg);
}
.about-wave-blue{background:var(--arus-blue);bottom:-4rem}
.about-wave-coral{background:var(--ria-coral);bottom:-7rem;left:-5%}
.about-wave-gold{background:var(--sunset-gold);bottom:-10rem;left:-1%}
.about-pillars{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1.2rem;
}
.about-pillar{
  padding:clamp(1.4rem,3vw,2rem);
  border-top:4px solid var(--arus-blue);
  background:#fff;
}
.about-pillar:nth-child(2){border-top-color:var(--ria-coral)}
.about-pillar:nth-child(3){border-top-color:var(--sunset-gold)}
.about-pillar h2{font-size:clamp(1.4rem,2.5vw,2rem);margin:.7rem 0}
.about-pillar p{color:var(--muted)}
.about-promise-section{
  background:var(--pantura-navy-deep);
  color:#fff;
}
.about-promise-grid,
.about-next-grid{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
  gap:clamp(2rem,6vw,5rem);
  align-items:start;
}
.about-promise-section h2{color:#fff;font-size:clamp(2.6rem,6vw,5.6rem);max-width:10ch}
.about-promise-eyebrow{color:var(--sunset-gold)!important}
.about-promise-copy p{color:rgba(255,255,255,.9);font-size:clamp(1.05rem,1.8vw,1.3rem)}
.about-promise-line{color:var(--sunset-gold)!important;font-family:var(--font-heading);font-weight:800}
.about-next-grid h2{max-width:11ch}

/* ---------- Contact / FAQ ---------- */
.contact-title{font-size:clamp(2.7rem,6vw,4.8rem);margin-top:.4rem}
.contact-channel-grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:1.5rem 0}
.contact-channel{
  display:grid;
  gap:.25rem;
  padding:1rem 1.1rem;
  border:1px solid var(--border);
  border-radius:1rem;
  background:#fff;
  text-decoration:none;
}
.contact-channel span{color:var(--muted);font-size:.76rem;text-transform:uppercase;letter-spacing:.09em;font-weight:800}
.contact-channel strong{color:var(--pantura-navy);word-break:break-word}
.contact-form-card{box-shadow:var(--shadow)}
.faq-intro{max-width:900px}
.faq-list a{color:var(--arus-blue);font-weight:700}

/* ---------- Public event submission / media partnership ---------- */
.submit-event-hero{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  background:var(--pantura-navy-deep);
  color:#fff;
  padding:clamp(4.4rem,8vw,7rem) 0 clamp(5rem,9vw,7.5rem);
}
.submit-event-hero-inner{position:relative;z-index:3;max-width:850px}
.submit-event-hero h1{
  color:#fff;
  max-width:11ch;
  font-size:clamp(3rem,7vw,6.2rem);
  margin:.65rem 0 1rem;
}
.submit-event-hero p{color:rgba(255,255,255,.86);font-size:clamp(1.05rem,1.7vw,1.25rem);max-width:58ch}
.submit-event-status{
  display:flex;
  flex-wrap:wrap;
  gap:.65rem;
  align-items:center;
  margin-top:1.6rem;
  font-size:.82rem;
  font-weight:700;
  color:rgba(255,255,255,.8);
}
.submit-event-status span{color:var(--sunset-gold);text-transform:uppercase;letter-spacing:.08em;font-size:.68rem}
.submit-event-status i{width:28px;height:1px;background:rgba(255,255,255,.3)}
.submit-event-supergraphic{position:absolute;inset:0;z-index:0;pointer-events:none}
.submit-route-line{
  position:absolute;
  right:-4%;
  top:16%;
  width:42%;
  height:160px;
  border-top:4px solid var(--warm-sand);
  border-radius:50%;
  transform:rotate(8deg);
}
.submit-ria-wave{
  position:absolute;
  right:-8%;
  bottom:-5rem;
  width:58%;
  height:9rem;
  border-radius:50%;
  transform:rotate(-6deg);
}
.submit-ria-blue{background:var(--arus-blue);bottom:-2rem}
.submit-ria-coral{background:var(--ria-coral);bottom:-5rem}
.submit-ria-gold{background:var(--sunset-gold);bottom:-8rem}
.submit-event-grid{
  display:grid;
  grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);
  gap:clamp(2rem,5vw,4rem);
  align-items:start;
}
.submit-event-info{position:sticky;top:calc(var(--header-height) + 1.5rem)}
.submit-event-info h2{margin:.55rem 0 1rem;max-width:12ch}
.submit-event-info>p{color:var(--muted)}
.submit-event-benefits{display:grid;gap:.8rem;margin:1.5rem 0}
.submit-event-benefits>div{
  padding:1rem 0;
  border-top:1px solid var(--border);
  display:grid;
  gap:.28rem;
}
.submit-event-benefits strong{color:var(--pantura-navy)}
.submit-event-benefits span{color:var(--muted);font-size:.9rem}
.submit-event-contact a{color:var(--arus-blue);font-weight:800}
.submit-event-form-card{box-shadow:var(--shadow)}
.compact-fields{gap:.85rem}
.consent-field{
  display:flex;
  align-items:flex-start;
  gap:.75rem;
  color:var(--muted);
  font-size:.88rem;
  line-height:1.5;
}
.consent-field input{width:18px;height:18px;flex:0 0 18px;margin-top:.1rem}

/* ---------- Events media-partner CTA ---------- */
.events-submit-card{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
  padding:clamp(1.6rem,4vw,2.5rem);
  border:1px solid rgba(23,50,77,.12);
  border-radius:2rem;
  background:#fff;
  box-shadow:var(--shadow-sm);
}
.events-submit-card h2{margin:.45rem 0 .6rem}
.events-submit-card p{color:var(--muted);margin:0}
.events-submit-card .actions{margin:0;flex:0 0 auto}

/* ---------- Footer channels ---------- */
.footer-contact-inline{display:flex;flex-wrap:wrap;gap:.55rem 1rem;margin-top:1rem}
.footer-contact-inline a{color:#fff;text-decoration:none;font-size:.85rem;font-weight:700}
.footer-contact-inline a:hover{color:var(--sunset-gold)}

/* Readability guardrails for all supergraphics. */
.premium-hero-copy,
.editorial-head,
.experience-heading,
.experience-copy,
.story-archive-hero-inner,
.about-hero-copy,
.submit-event-hero-inner{isolation:isolate}

@media(max-width:1100px){
  .site-nav>a:not(.button){font-size:.79rem;padding:.58rem .45rem}
  .site-nav .button{padding-inline:.75rem}
  .hero-arus-line{width:58%;right:-12%}
  .hero-horizon-frame{right:-20%;width:50vw}
}

@media(max-width:960px){
  .about-hero-grid,
  .about-promise-grid,
  .about-next-grid,
  .submit-event-grid{grid-template-columns:1fr}
  .about-wordmark-stage{max-width:650px}
  .about-pillars{grid-template-columns:1fr}
  .submit-event-info{position:static}
  .events-submit-card{align-items:flex-start;flex-direction:column}
  .hero-ria-wave{width:105%;height:31%;bottom:-5%}
  .hero-arus-line{width:62%;height:24%;top:2%;right:-12%}
  .hero-horizon-frame{top:45%;right:-25%;width:64vw}
}

@media(max-width:820px){
  .hero-arus-line{display:none}
  .hero-horizon-frame{right:-42%;top:48%;width:86vw;opacity:.6}
  .hero-ria-wave{width:125%;height:25%;left:-18%;bottom:-3%}
  .ria-wave-blue{stroke-width:42}
  .ria-wave-coral{stroke-width:32}
  .ria-wave-gold{stroke-width:23}
  .hero-fixed-tagline{font-size:clamp(1.15rem,5vw,1.7rem)}
  .premium-slides{min-height:165px}
  .premium-slide h1{font-size:clamp(1.55rem,7vw,2.5rem)}
  .home-experience{padding-bottom:9rem}
  .experience-ribbons{height:34%}
  .contact-channel-grid{grid-template-columns:1fr}
  .submit-route-line{width:60%;right:-20%}
  .submit-ria-wave{width:85%}
}

@media(max-width:520px){
  .hero-horizon-frame{top:58%;right:-55%;width:115vw}
  .hero-horizon-sun{width:46px;height:46px}
  .hero-ria-wave{height:20%;bottom:-2%}
  .premium-hero{padding-bottom:5.6rem}
  .premium-slides{min-height:180px}
  .about-hero{padding-bottom:7rem}
  .about-arc{right:-15rem}
  .about-wave{width:95%}
  .submit-event-status{align-items:flex-start;flex-direction:column}
  .submit-event-status i{display:none}
  .events-submit-card .actions{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .brand-flow-track{animation:none!important}
}
.home-event-partner{
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:1rem 1.5rem;
  align-items:center;
  margin-top:2rem;
  padding:1rem 1.15rem;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.home-event-partner>span{
  color:var(--ria-coral);
  font-family:var(--font-heading);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:.72rem;
}
.home-event-partner p{margin:0;color:var(--muted)}
@media(max-width:720px){
  .home-event-partner{grid-template-columns:1fr;gap:.45rem}
}

/* =========================================================
   PANTURIA V5 — visual refinement after live QA
   Priorities: precise hierarchy, motion that always runs,
   simplified supergraphics, and clear text safe zones.
   ========================================================= */

/* Hero hierarchy: logo first, tagline aligned optically to the logo. */
.hero-brand-stage{
  width:min(100%,640px);
  max-width:640px;
  padding-bottom:.8rem;
}
.hero-brand-logo{
  display:block;
  width:100%;
  max-width:640px;
  height:auto;
  object-fit:contain;
}
.hero-fixed-tagline{
  width:100%;
  max-width:640px;
  margin:.72rem 0 0;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.2rem,2vw,1.8rem);
  font-weight:800;
  letter-spacing:.015em;
  line-height:1.08;
}
.premium-slides{
  max-width:640px;
  min-height:146px;
  margin-top:.72rem;
}
.premium-slide h1{
  max-width:100%;
  font-size:clamp(1.55rem,2.65vw,2.75rem);
  line-height:1.04;
  letter-spacing:-.035em;
}
.premium-slide p{
  max-width:600px;
  margin-top:.7rem;
  line-height:1.55;
}
.premium-hero-actions{max-width:640px}

/* Supergraphic system: three ideas, used with restraint. */
.hero-arus-line{
  top:5%;
  right:-5%;
  width:43%;
  height:25%;
  opacity:.62;
}
.hero-arus-line path{
  stroke:var(--arus-blue);
  stroke-width:3;
  opacity:1;
}
.hero-arus-line circle{display:none}

.hero-ria-wave{
  left:-7%;
  bottom:-7%;
  width:70%;
  height:28%;
  opacity:.58;
}
.ria-wave-blue{stroke-width:24}
.ria-wave-coral{stroke-width:17}
.ria-wave-gold{stroke-width:10}

.hero-horizon-frame{
  top:18%;
  right:-9%;
  width:min(35vw,520px);
  border:2px solid rgba(244,232,214,.44);
  border-left-color:rgba(242,181,68,.65);
  box-shadow:0 0 0 42px rgba(46,120,166,.045);
  opacity:.72;
}
.hero-horizon-sun{
  width:52px;
  height:52px;
  opacity:.8;
  box-shadow:none;
}

/* Marquee must stay in motion in the public experience. */
@keyframes panturiaMarqueeV5{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}
.brand-flow-track{
  animation:panturiaMarqueeV5 34s linear infinite!important;
  animation-play-state:running!important;
  will-change:transform;
}
@media(prefers-reduced-motion:reduce){
  .brand-flow-track{
    animation:panturiaMarqueeV5 44s linear infinite!important;
  }
}

/* Experience graphic: thinner and lower, never competing with copy. */
.home-experience{
  min-height:560px;
  padding:clamp(4.5rem,8vw,7rem) 0 clamp(7.5rem,11vw,9.5rem);
}
.experience-ribbons{
  bottom:-7%;
  height:30%;
  opacity:.62;
}
.experience-flow-blue{stroke-width:28}
.experience-flow-coral{stroke-width:19}
.experience-flow-gold{stroke-width:11}

/* Final CTA uses one quiet flow only. */
.final-flow-blue{stroke-width:20;opacity:.32}
.final-flow-coral,.final-flow-gold{display:none}

/* About: simplified graphic system and brighter logo application. */
.about-wordmark-stage{
  background:var(--pantura-navy);
  padding:clamp(1.8rem,4vw,3rem);
}
.about-wordmark-stage span{
  margin-top:1.15rem;
  color:var(--warm-sand);
  font-family:var(--font-heading);
  font-size:clamp(.8rem,1.25vw,1rem);
  font-weight:800;
  letter-spacing:.06em;
}
.about-arc{
  right:-11rem;
  top:-10rem;
  border-color:rgba(46,120,166,.28);
  box-shadow:0 0 0 48px rgba(242,181,68,.055);
}
.about-wave{
  background:none!important;
}
.about-wave-blue{
  left:-6%;
  bottom:-8.5rem;
  width:58%;
  height:12rem;
  border-top:3px solid rgba(46,120,166,.42);
  border-radius:50%;
  transform:rotate(-5deg);
}
.about-wave-coral,.about-wave-gold{display:none!important}

/* Decorative elements remain behind content. */
.premium-hero-copy,
.premium-hero-visual,
.about-hero-copy,
.about-wordmark-stage,
.experience-heading,
.experience-copy{
  position:relative;
  z-index:4;
}

@media(max-width:960px){
  .hero-brand-stage,
  .hero-brand-logo,
  .hero-fixed-tagline,
  .premium-slides,
  .premium-hero-actions{max-width:600px}
  .hero-ria-wave{width:82%;height:24%;bottom:-8%;opacity:.46}
  .hero-horizon-frame{right:-22%;width:50vw;opacity:.48}
  .experience-ribbons{height:26%;opacity:.5}
}

@media(max-width:820px){
  /* On small screens clarity wins over decoration. */
  .hero-arus-line,
  .hero-horizon-frame{display:none!important}
  .hero-ria-wave{
    display:block!important;
    left:-18%;
    bottom:-7.5%;
    width:112%;
    height:15%;
    opacity:.34;
  }
  .ria-wave-blue{stroke-width:16}
  .ria-wave-coral{stroke-width:11}
  .ria-wave-gold{stroke-width:7}
  .hero-brand-stage,
  .hero-brand-logo,
  .hero-fixed-tagline,
  .premium-slides,
  .premium-hero-actions{max-width:100%}
  .hero-fixed-tagline{font-size:clamp(1.15rem,4.7vw,1.45rem)}
  .premium-slide h1{font-size:clamp(1.5rem,6.6vw,2.25rem)}
  .experience-ribbons{height:18%;bottom:-4%;opacity:.38}
  .experience-flow-blue{stroke-width:18}
  .experience-flow-coral{stroke-width:12}
  .experience-flow-gold{stroke-width:7}
}

@media(max-width:520px){
  .premium-hero{padding-top:2.2rem;padding-bottom:4.8rem}
  .hero-ria-wave{display:none!important}
  .hero-brand-stage{padding-bottom:.55rem}
  .hero-brand-logo{width:min(100%,360px)}
  .hero-fixed-tagline{
    width:min(100%,360px);
    margin-top:.6rem;
    font-size:clamp(1.12rem,5.4vw,1.35rem);
    letter-spacing:0;
  }
  .premium-slides{min-height:150px;margin-top:.55rem}
  .premium-slide h1{font-size:clamp(1.45rem,7vw,2rem)}
  .premium-slide p{font-size:.96rem}
  .premium-hero-actions{margin-top:.35rem}
  .experience-ribbons{display:none!important}
  .about-arc{right:-17rem;opacity:.65}
  .about-wave-blue{display:none!important}
}

/* =========================================================
   PANTURIA V6 — Precision Patch
   Live-QA refinements: safer margins, stronger hierarchy,
   refined motion, cleaner supergraphics, and mobile clarity.
   ========================================================= */

/* 1. Global breathing room: consistent DKV alignment system. */
.container{
  width:min(calc(100% - 5rem),var(--container));
  margin-inline:auto;
}

@media(max-width:1024px){
  .container{width:min(calc(100% - 3rem),var(--container))}
}

@media(max-width:600px){
  .container{width:min(calc(100% - 2.25rem),var(--container))}
}

/* 2. Hero brand lockup: logo and tagline share one optical width. */
.hero-brand-stage{
  width:min(100%,640px);
  max-width:640px;
  padding-bottom:0;
}
.hero-brand-logo{
  display:block;
  width:100%;
  max-width:640px;
  height:auto;
}
.hero-fixed-tagline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.65rem;
  width:100%;
  max-width:640px;
  margin:.9rem 0 0;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.45rem,2.15vw,2.05rem);
  font-weight:800;
  letter-spacing:-.015em;
  line-height:1;
  white-space:nowrap;
}
.hero-fixed-tagline span{display:block}

/* 3. Rotating copy sits lower and supports, rather than competes with, the brand lockup. */
.premium-slides{
  position:relative;
  max-width:640px;
  min-height:142px;
  margin-top:clamp(2rem,3.2vw,2.75rem);
  display:grid;
  align-items:start;
}
.premium-slide{
  grid-area:1/1;
  opacity:0;
  transform:translate3d(0,16px,0) scale(.992);
  filter:blur(4px);
  pointer-events:none;
  transition:
    opacity .42s ease,
    transform .56s cubic-bezier(.22,1,.36,1),
    filter .42s ease;
  z-index:1;
}
.premium-slide.is-active{
  opacity:1;
  transform:translate3d(0,0,0) scale(1);
  filter:blur(0);
  pointer-events:auto;
  z-index:2;
}
.premium-slide h1{
  max-width:100%;
  margin:0;
  color:#fff;
  font-size:clamp(1.35rem,2.15vw,2.15rem);
  line-height:1.08;
  letter-spacing:-.025em;
}
.premium-slide p{
  max-width:580px;
  margin:.72rem 0 0;
  color:rgba(255,255,255,.9);
  font-size:clamp(.92rem,1.15vw,1.05rem);
  line-height:1.5;
}
.premium-slide.is-active h1{
  animation:panturiaCopyTitleV6 .7s cubic-bezier(.22,1,.36,1) both;
}
.premium-slide.is-active p{
  animation:panturiaCopyBodyV6 .72s .11s cubic-bezier(.22,1,.36,1) both;
}
@keyframes panturiaCopyTitleV6{
  from{opacity:0;transform:translateY(14px);letter-spacing:.015em}
  to{opacity:1;transform:translateY(0);letter-spacing:-.025em}
}
@keyframes panturiaCopyBodyV6{
  from{opacity:0;transform:translateY(9px)}
  to{opacity:1;transform:translateY(0)}
}
.premium-hero-actions{
  max-width:640px;
  margin-top:.65rem;
}

/* 4. Simplified supergraphics: one route + one restrained crowd wave per hero. */
.hero-horizon-frame{display:none!important}
.hero-arus-line{
  top:4%;
  right:-3%;
  width:34%;
  height:20%;
  opacity:.46;
}
.hero-arus-line path{
  stroke:var(--arus-blue);
  stroke-width:3;
  opacity:1;
}
.hero-ria-wave{
  left:-8%;
  bottom:-8%;
  width:63%;
  height:23%;
  opacity:.72;
}
.ria-wave-blue{stroke-width:22}
.ria-wave-coral{stroke-width:13;opacity:.9}
.ria-wave-gold{stroke-width:7;opacity:.95}

/* Experience uses the same DNA, but even more quietly. */
.experience-ribbons{
  height:22%;
  bottom:-5%;
  opacity:.48;
}
.experience-flow-blue{stroke-width:20}
.experience-flow-coral{display:none}
.experience-flow-gold{stroke-width:8}

/* Story hero: one principal current and one accent only. */
.story-archive-art{opacity:1}
.archive-flow-main{
  fill:none;
  stroke:var(--arus-blue);
  stroke-width:34;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.9;
}
.archive-flow-accent{
  fill:none;
  stroke:var(--sunset-gold);
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:.95;
}
.story-archive-hero-inner{
  padding:clamp(4.75rem,8vw,6.25rem) 0 clamp(5.75rem,9vw,7rem);
}

/* Story cards retain PANTURIA DNA but stop competing with editorial text. */
.story-wave{opacity:.9}
.story-wave-a{height:30%}
.story-wave-b{height:19%;opacity:.82}
.story-wave-c{height:10%;opacity:.92}

/* 5. Mobile: clarity wins, graphics stay outside the text safe zone. */
@media(max-width:960px){
  .hero-arus-line{width:30%;right:-8%;opacity:.34}
  .hero-ria-wave{width:74%;height:18%;bottom:-7%;opacity:.5}
}

@media(max-width:820px){
  .hero-arus-line{display:none!important}
  .hero-ria-wave{
    left:-24%;
    bottom:-9%;
    width:115%;
    height:11%;
    opacity:.32;
  }
  .ria-wave-blue{stroke-width:12}
  .ria-wave-coral{stroke-width:7}
  .ria-wave-gold{stroke-width:4}
  .premium-slides{
    min-height:138px;
    margin-top:1.9rem;
  }
  .premium-slide h1{font-size:clamp(1.25rem,5.4vw,1.7rem)}
  .premium-slide p{font-size:.94rem}
  .experience-ribbons{height:12%;opacity:.28}
}

@media(max-width:520px){
  .hero-ria-wave{display:none!important}
  .hero-brand-stage,
  .hero-brand-logo,
  .hero-fixed-tagline,
  .premium-slides,
  .premium-hero-actions{max-width:100%}
  .hero-brand-logo{width:min(100%,360px)}
  .hero-fixed-tagline{
    width:min(100%,360px);
    margin-top:.75rem;
    gap:.35rem;
    font-size:clamp(1.02rem,4.6vw,1.24rem);
    letter-spacing:-.02em;
  }
  .premium-slides{
    min-height:132px;
    margin-top:1.8rem;
  }
  .premium-slide h1{font-size:clamp(1.2rem,5.8vw,1.55rem)}
  .premium-slide p{font-size:.92rem;line-height:1.48}
  .premium-hero-actions{margin-top:.45rem}
  .experience-ribbons{display:none!important}
  .story-archive-hero-inner{padding:4rem 0 5rem}
  .archive-flow-main{stroke-width:24;opacity:.72}
  .archive-flow-accent{stroke-width:7;opacity:.92}
}

/* =========================================================
   PANTURIA V7 — Hero Brand Lockup Correction
   Reference: compact logo + tracked tagline + outlined copy pill.
   ========================================================= */

/* Brand lockup: tagline is one clean line, not three distributed words. */
.hero-brand-stage{
  width:min(100%,560px);
  max-width:560px;
  padding-bottom:0;
}
.hero-brand-logo{
  display:block;
  width:min(100%,520px);
  max-width:520px;
  height:auto;
  object-fit:contain;
}
.hero-fixed-tagline{
  display:block;
  width:auto;
  max-width:520px;
  margin:.5rem 0 0;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.02rem,1.45vw,1.32rem);
  font-weight:800;
  line-height:1.08;
  letter-spacing:.22em;
  white-space:nowrap;
  text-align:left;
}

/* Rotating messages become a compact visual object below the brand lockup. */
.premium-slides{
  position:relative;
  width:min(100%,480px);
  max-width:480px;
  min-height:92px;
  margin-top:clamp(1.8rem,3vw,2.35rem);
  padding:.95rem 1.4rem;
  border:1.5px solid transparent;
  border-radius:999px;
  background:
    linear-gradient(var(--pantura-navy),var(--pantura-navy)) padding-box,
    linear-gradient(90deg,var(--arus-blue) 0%,var(--ria-coral) 56%,var(--sunset-gold) 100%) border-box;
  overflow:hidden;
}
.premium-slide{
  position:absolute;
  inset:.95rem 1.4rem;
  display:flex;
  flex-direction:column;
  justify-content:center;
  opacity:0;
  transform:translateY(8px);
  transition:opacity .58s ease,transform .58s cubic-bezier(.22,.61,.36,1);
  pointer-events:none;
}
.premium-slide.is-active{
  position:absolute;
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}
.premium-slide h1{
  margin:0;
  max-width:100%;
  color:#fff;
  font-size:clamp(.9rem,1.15vw,1.08rem);
  line-height:1.14;
  letter-spacing:-.015em;
  white-space:normal;
}
.premium-slide p{
  margin:.28rem 0 0;
  max-width:100%;
  color:rgba(255,255,255,.88);
  font-size:clamp(.78rem,.92vw,.92rem);
  line-height:1.4;
}
.premium-hero-actions{
  max-width:560px;
  margin-top:1.15rem;
}

@media(max-width:820px){
  .hero-brand-stage{max-width:460px}
  .hero-brand-logo{width:min(100%,430px);max-width:430px}
  .hero-fixed-tagline{
    max-width:430px;
    font-size:clamp(.9rem,2.4vw,1.12rem);
    letter-spacing:.18em;
  }
  .premium-slides{
    width:min(100%,420px);
    max-width:420px;
    min-height:88px;
    margin-top:1.7rem;
  }
}

@media(max-width:520px){
  .hero-brand-stage{width:100%;max-width:100%}
  .hero-brand-logo{width:min(100%,360px);max-width:360px}
  .hero-fixed-tagline{
    width:auto;
    max-width:360px;
    margin-top:.4rem;
    font-size:clamp(.82rem,3.5vw,.98rem);
    letter-spacing:.16em;
    white-space:normal;
  }
  .premium-slides{
    width:min(100%,330px);
    max-width:330px;
    min-height:84px;
    margin-top:1.55rem;
    padding:.82rem 1.05rem;
    border-radius:34px;
  }
  .premium-slide{inset:.82rem 1.05rem}
  .premium-slide h1{font-size:clamp(.8rem,3.6vw,.92rem)}
  .premium-slide p{font-size:clamp(.72rem,3.2vw,.82rem)}
  .premium-hero-actions{margin-top:1rem}
}

/* =========================================================
   V8 — CENTERED HERO LOCKUP
   One visual package, centered as a single composition.
   ========================================================= */
.premium-hero-centered{
  min-height:clamp(650px,78vh,820px);
  padding:clamp(4.6rem,8vw,7.2rem) 0 clamp(5.4rem,9vw,7.6rem);
  display:grid;
  place-items:center;
  background:linear-gradient(180deg,#102f4b 0%,#173b5d 100%);
}
.premium-hero-center-shell{
  position:relative;
  z-index:4;
  width:min(calc(100% - 4rem),1120px);
  margin-inline:auto;
  display:flex;
  justify-content:center;
}
.premium-hero-copy-centered{
  width:min(100%,760px);
  max-width:760px;
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
}
.hero-brand-stage-centered{
  width:min(100%,610px);
  max-width:610px;
  margin-inline:auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:0;
}
.hero-brand-logo-centered{
  display:block;
  width:min(100%,600px);
  max-width:600px;
  height:auto;
  margin-inline:auto;
}
.hero-fixed-tagline-centered{
  width:100%;
  max-width:600px;
  margin:.72rem auto 0;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(1.05rem,2vw,1.42rem);
  line-height:1;
  font-weight:800;
  letter-spacing:.22em;
  text-align:center;
  white-space:nowrap;
}
.premium-slides-centered{
  position:relative;
  width:min(100%,640px);
  max-width:640px;
  min-height:128px;
  margin:clamp(2.25rem,4.2vw,3.15rem) auto 0;
  border-radius:999px;
  background:
    linear-gradient(#173b5d,#173b5d) padding-box,
    linear-gradient(90deg,var(--arus-blue),var(--ria-coral) 54%,var(--sunset-gold)) border-box;
  border:1.5px solid transparent;
  box-shadow:0 18px 42px rgba(9,31,48,.18);
  overflow:hidden;
}
.premium-slide-centered{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:.46rem;
  padding:1.15rem 2rem;
  text-align:center;
  opacity:0;
  visibility:hidden;
  transform:translateY(10px) scale(.99);
  transition:opacity .58s cubic-bezier(.22,.61,.36,1),transform .58s cubic-bezier(.22,.61,.36,1),visibility .58s;
  pointer-events:none;
}
.premium-slide-centered.is-active{
  opacity:1;
  visibility:visible;
  transform:translateY(0) scale(1);
  pointer-events:auto;
}
.premium-slide-centered h1{
  margin:0;
  max-width:100%;
  color:#fff;
  font-size:clamp(1rem,1.7vw,1.38rem);
  line-height:1.16;
  letter-spacing:-.025em;
  text-align:center;
}
.premium-slide-centered p{
  margin:0;
  max-width:46ch;
  color:rgba(255,255,255,.9);
  font-size:clamp(.86rem,1.2vw,.98rem);
  line-height:1.45;
  text-align:center;
}
.premium-hero-actions-centered{
  width:100%;
  max-width:640px;
  margin:1.45rem auto 0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1rem;
}
.premium-hero-actions-centered .actions{
  margin:0;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.8rem;
}
.premium-pager-centered{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.55rem;
}
.premium-hero-art-centered{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
}
.hero-arus-line-centered{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:.28;
}
.hero-arus-line-centered path{
  fill:none;
  stroke:var(--arus-blue);
  stroke-width:3;
}
.hero-ria-wave-centered{
  position:absolute;
  left:0;
  right:0;
  bottom:-2%;
  width:100%;
  height:46%;
  opacity:.76;
}
.hero-ria-wave-centered path{
  fill:none;
  stroke-linecap:round;
}
.hero-ria-wave-centered .ria-wave-blue{stroke:var(--arus-blue);stroke-width:17}
.hero-ria-wave-centered .ria-wave-coral{stroke:var(--ria-coral);stroke-width:13}
.hero-ria-wave-centered .ria-wave-gold{stroke:var(--sunset-gold);stroke-width:10}

@media(max-width:820px){
  .premium-hero-centered{
    min-height:620px;
    padding:4rem 0 5.3rem;
  }
  .premium-hero-center-shell{
    width:min(calc(100% - 2.5rem),720px);
  }
  .hero-brand-stage-centered{
    width:min(100%,500px);
  }
  .hero-brand-logo-centered{
    width:min(100%,470px);
  }
  .hero-fixed-tagline-centered{
    max-width:470px;
    font-size:clamp(.92rem,3.1vw,1.18rem);
    letter-spacing:.18em;
  }
  .premium-slides-centered{
    width:min(100%,560px);
    min-height:122px;
    margin-top:2.2rem;
  }
  .premium-slide-centered{
    padding:1rem 1.5rem;
  }
  .hero-ria-wave-centered{
    height:34%;
    bottom:-3%;
    opacity:.6;
  }
}

@media(max-width:520px){
  .premium-hero-centered{
    min-height:575px;
    padding:3.15rem 0 4.8rem;
  }
  .premium-hero-center-shell{
    width:min(calc(100% - 2.25rem),480px);
  }
  .hero-brand-stage-centered{
    width:100%;
    max-width:350px;
  }
  .hero-brand-logo-centered{
    width:min(100%,340px);
  }
  .hero-fixed-tagline-centered{
    width:100%;
    max-width:340px;
    margin-top:.58rem;
    font-size:clamp(.78rem,4.2vw,.94rem);
    letter-spacing:.16em;
    white-space:normal;
  }
  .premium-slides-centered{
    width:100%;
    max-width:360px;
    min-height:118px;
    margin-top:1.95rem;
    border-radius:26px;
  }
  .premium-slide-centered{
    padding:.95rem 1.15rem;
  }
  .premium-slide-centered h1{
    font-size:clamp(.92rem,4.2vw,1.08rem);
  }
  .premium-slide-centered p{
    font-size:clamp(.78rem,3.5vw,.88rem);
    line-height:1.42;
  }
  .premium-hero-actions-centered{
    margin-top:1.2rem;
  }
  .premium-hero-actions-centered .actions{
    width:100%;
    flex-direction:column;
    gap:.65rem;
  }
  .premium-hero-actions-centered .button{
    width:min(100%,280px);
  }
  .hero-arus-line-centered{
    opacity:.16;
  }
  .hero-ria-wave-centered{
    height:27%;
    bottom:-4%;
    opacity:.48;
  }
  .hero-ria-wave-centered .ria-wave-blue{stroke-width:12}
  .hero-ria-wave-centered .ria-wave-coral{stroke-width:9}
  .hero-ria-wave-centered .ria-wave-gold{stroke-width:7}
}

/* =========================================================
   PANTURIA HERO V9 — compact message frame + slow motion
   ========================================================= */
.premium-slides-centered{
  width:min(100%,520px);
  max-width:520px;
  min-height:108px;
  margin:clamp(2.15rem,4vw,2.9rem) auto 0;
  border-radius:999px;
  box-shadow:0 16px 38px rgba(9,31,48,.16);
}
.premium-slide-centered{
  display:grid;
  place-content:center;
  justify-items:center;
  gap:.34rem;
  padding:1rem 1.55rem;
  transform:translateY(16px) scale(.985);
  filter:blur(4px);
  opacity:0;
  transition:
    opacity .92s cubic-bezier(.22,.61,.36,1),
    transform .92s cubic-bezier(.22,.61,.36,1),
    filter .92s cubic-bezier(.22,.61,.36,1),
    visibility .92s;
}
.premium-slide-centered.is-active{
  transform:translateY(0) scale(1);
  filter:blur(0);
  opacity:1;
}
.premium-slide-centered h1{
  font-size:clamp(.96rem,1.45vw,1.22rem);
  line-height:1.15;
}
.premium-slide-centered p{
  font-size:clamp(.82rem,1.05vw,.93rem);
  line-height:1.42;
  max-width:44ch;
}
.premium-hero-actions-centered{
  max-width:520px;
  margin:0 auto;
  gap:1rem;
}
.premium-pager-centered{
  order:0;
  margin-top:1rem;
  min-height:12px;
}
.premium-hero-actions-centered .actions{
  order:1;
  margin-top:.1rem;
}
.premium-dot{
  width:8px;
  height:8px;
  transition:
    width .72s cubic-bezier(.22,.61,.36,1),
    background .72s ease,
    opacity .72s ease,
    transform .72s ease;
  opacity:.68;
}
.premium-dot.is-active{
  width:32px;
  opacity:1;
}

@media(max-width:820px){
  .premium-slides-centered{
    width:min(100%,480px);
    max-width:480px;
    min-height:104px;
  }
  .premium-hero-actions-centered{max-width:480px}
}

@media(max-width:520px){
  .premium-slides-centered{
    width:min(100%,330px);
    max-width:330px;
    min-height:98px;
    margin-top:1.85rem;
    border-radius:24px;
  }
  .premium-slide-centered{
    gap:.3rem;
    padding:.82rem 1.05rem;
    transform:translateY(12px) scale(.99);
    filter:blur(3px);
  }
  .premium-slide-centered h1{
    font-size:clamp(.85rem,3.8vw,.98rem);
  }
  .premium-slide-centered p{
    font-size:clamp(.74rem,3.2vw,.83rem);
    line-height:1.38;
  }
  .premium-hero-actions-centered{
    width:100%;
    max-width:330px;
  }
  .premium-pager-centered{margin-top:.9rem}
  .premium-hero-actions-centered .actions{margin-top:0}
}

/* =========================================================
   PANTURIA HERO V10 — CENTER FOCUS + BLURRED SIDE PREVIEWS
   Active message stays centered. Previous/next remain visible,
   smaller and blurred, matching the approved visual reference.
   ========================================================= */
.hero-carousel-v10{
  min-height:clamp(650px,78vh,820px);
  padding:clamp(4.4rem,7vw,6.6rem) 0 clamp(5.2rem,8vw,7rem);
}
.hero-carousel-v10 .premium-hero-center-shell{
  width:min(calc(100% - 3rem),1180px);
  max-width:1180px;
}
.hero-package-v10{
  width:100%!important;
  max-width:1080px!important;
  overflow:visible;
}
.hero-carousel-v10 .hero-brand-stage-centered{
  width:min(100%,520px);
  max-width:520px;
}
.hero-carousel-v10 .hero-brand-logo-centered{
  width:min(100%,500px);
  max-width:500px;
}
.hero-carousel-v10 .hero-fixed-tagline-centered{
  width:100%;
  max-width:500px;
  margin:.72rem auto 0;
  font-size:clamp(.98rem,1.8vw,1.28rem);
  line-height:1;
  letter-spacing:.2em;
  white-space:nowrap;
}

.hero-message-carousel{
  --hero-card-width:430px;
  --hero-card-gap:18px;
  width:100%;
  margin:clamp(2.1rem,3.8vw,2.8rem) auto 0;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.hero-message-viewport{
  position:relative;
  width:min(100%,920px);
  height:122px;
  overflow:hidden;
  margin-inline:auto;
  -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
  mask-image:linear-gradient(90deg,transparent 0,#000 7%,#000 93%,transparent 100%);
}
.hero-message-track{
  display:flex;
  align-items:center;
  gap:var(--hero-card-gap);
  width:max-content;
  height:100%;
  will-change:transform;
  transform:translate3d(0,0,0);
  transition:transform 1.15s cubic-bezier(.22,1,.36,1);
}
.hero-message-track.is-resetting{
  transition:none!important;
}
.hero-message-card{
  flex:0 0 var(--hero-card-width);
  width:var(--hero-card-width);
  min-height:92px;
  padding:1rem 1.65rem;
  border:1.5px solid transparent;
  border-radius:999px;
  background:
    linear-gradient(#173b5d,#173b5d) padding-box,
    linear-gradient(90deg,var(--arus-blue),var(--ria-coral) 55%,var(--sunset-gold)) border-box;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  opacity:.08;
  filter:blur(6px);
  transform:scale(.78);
  transform-origin:center;
  transition:
    opacity 1.05s cubic-bezier(.22,1,.36,1),
    filter 1.05s cubic-bezier(.22,1,.36,1),
    transform 1.05s cubic-bezier(.22,1,.36,1),
    background 1.05s ease,
    border-color 1.05s ease;
  pointer-events:none;
}
.hero-message-card h2{
  margin:0;
  max-width:100%;
  color:#fff;
  font-family:var(--font-heading);
  font-size:clamp(.94rem,1.25vw,1.12rem);
  line-height:1.16;
  letter-spacing:-.025em;
  text-transform:uppercase;
}
.hero-message-card p{
  margin:.32rem 0 0;
  max-width:44ch;
  color:rgba(255,255,255,.9);
  font-size:clamp(.78rem,.98vw,.9rem);
  line-height:1.4;
}
.hero-message-card.is-active{
  opacity:1;
  filter:blur(0);
  transform:scale(1);
  z-index:3;
  box-shadow:0 16px 38px rgba(9,31,48,.18);
}
.hero-message-card.is-prev,
.hero-message-card.is-next{
  opacity:.27;
  filter:blur(3px);
  transform:scale(.84);
  z-index:1;
  background:
    linear-gradient(rgba(23,59,93,.72),rgba(23,59,93,.72)) padding-box,
    linear-gradient(90deg,rgba(46,120,166,.55),rgba(240,100,73,.42) 55%,rgba(242,181,68,.48)) border-box;
}
.hero-message-card.is-prev h2,
.hero-message-card.is-next h2,
.hero-message-card.is-prev p,
.hero-message-card.is-next p{
  color:rgba(255,255,255,.56);
}
.hero-carousel-pager{
  margin-top:.9rem;
  min-height:12px;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.55rem;
}
.hero-carousel-actions{
  margin:1rem 0 0!important;
  display:flex;
  justify-content:center;
  align-items:center;
  gap:.8rem;
  flex-wrap:wrap;
}
.hero-carousel-actions .premium-secondary{
  color:#fff;
  border-color:rgba(255,255,255,.42);
}
.hero-carousel-actions .premium-secondary:hover{
  background:rgba(255,255,255,.08);
  border-color:#fff;
}

/* Keep decorative graphics below the message carousel safe area. */
.hero-carousel-v10 .hero-ria-wave-centered{
  height:30%;
  bottom:-5%;
  opacity:.48;
}
.hero-carousel-v10 .hero-arus-line-centered{
  opacity:.2;
}

@media(max-width:900px){
  .hero-carousel-v10 .premium-hero-center-shell{
    width:min(calc(100% - 2rem),820px);
  }
  .hero-message-carousel{
    --hero-card-width:380px;
    --hero-card-gap:14px;
  }
  .hero-message-viewport{
    width:min(100%,760px);
    height:116px;
  }
  .hero-message-card{
    min-height:88px;
    padding:.9rem 1.35rem;
  }
}

@media(max-width:620px){
  .hero-carousel-v10{
    min-height:590px;
    padding:3.1rem 0 4.7rem;
  }
  .hero-carousel-v10 .premium-hero-center-shell{
    width:100%;
    max-width:none;
  }
  .hero-package-v10{
    width:100%!important;
    max-width:none!important;
  }
  .hero-carousel-v10 .hero-brand-stage-centered{
    width:min(calc(100% - 2.4rem),360px);
  }
  .hero-carousel-v10 .hero-brand-logo-centered{
    width:min(100%,350px);
  }
  .hero-carousel-v10 .hero-fixed-tagline-centered{
    max-width:350px;
    font-size:clamp(.78rem,4vw,.95rem);
    letter-spacing:.16em;
  }
  .hero-message-carousel{
    --hero-card-width:min(76vw,330px);
    --hero-card-gap:10px;
    margin-top:1.85rem;
  }
  .hero-message-viewport{
    width:100vw;
    max-width:100vw;
    height:112px;
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);
  }
  .hero-message-card{
    min-height:86px;
    padding:.8rem 1.05rem;
  }
  .hero-message-card h2{
    font-size:clamp(.82rem,3.55vw,.95rem);
  }
  .hero-message-card p{
    font-size:clamp(.72rem,3.05vw,.81rem);
    line-height:1.36;
  }
  .hero-message-card.is-prev,
  .hero-message-card.is-next{
    opacity:.23;
    filter:blur(3.2px);
    transform:scale(.82);
  }
  .hero-carousel-pager{margin-top:.75rem}
  .hero-carousel-actions{
    margin-top:.85rem!important;
    width:min(calc(100% - 2.4rem),340px);
    gap:.65rem;
  }
  .hero-carousel-actions .button{
    flex:1 1 140px;
    min-width:0;
  }
  .hero-carousel-v10 .hero-arus-line-centered{display:none!important}
  .hero-carousel-v10 .hero-ria-wave-centered{
    height:20%;
    bottom:-5%;
    opacity:.34;
  }
}

@media(prefers-reduced-motion:reduce){
  .hero-message-track,
  .hero-message-card{
    transition-duration:.01ms!important;
  }
}


/* =========================================================
   PANTURIA V11 — HERO MOTION + VERTICAL BALANCE
   Goal:
   1) Softer, slower carousel motion.
   2) More separation between the message carousel and CTAs.
   3) Center the complete logo → tagline → carousel → pager → CTA package
      optically within the navy hero field.
   ========================================================= */

.hero-carousel-v10{
  min-height:clamp(700px,82vh,860px);
  padding:clamp(3.6rem,6vw,5.2rem) 0;
}

.hero-carousel-v10 .premium-hero-center-shell{
  min-height:clamp(585px,68vh,720px);
  display:flex;
  align-items:center;
  justify-content:center;
}

.hero-package-v10{
  margin:auto!important;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}

/* Keep the brand lockup visually anchored as one centered unit. */
.hero-carousel-v10 .hero-brand-stage-centered{
  margin-inline:auto;
}

/* Slightly more breathing room before the moving message row. */
.hero-message-carousel{
  margin-top:clamp(2.35rem,4.2vw,3.15rem);
}

/* Softer, slower horizontal movement. */
.hero-message-track{
  transition:
    transform 1.75s cubic-bezier(.16,1,.3,1)!important;
  transform-style:preserve-3d;
  backface-visibility:hidden;
}

/* Let blur/scale/opacity "breathe" while the card moves. */
.hero-message-card{
  transition:
    opacity 1.55s cubic-bezier(.16,1,.3,1),
    filter 1.55s cubic-bezier(.16,1,.3,1),
    transform 1.55s cubic-bezier(.16,1,.3,1),
    background 1.35s ease,
    border-color 1.35s ease,
    box-shadow 1.55s ease!important;
  will-change:transform,opacity,filter;
  backface-visibility:hidden;
}

/* Active card settles gently instead of snapping into focus. */
.hero-message-card.is-active{
  transform:scale(1);
  box-shadow:0 18px 44px rgba(9,31,48,.16);
}

/* Side cards are clearly previews, but still legible enough to understand
   there is content before/after the active card. */
.hero-message-card.is-prev,
.hero-message-card.is-next{
  opacity:.22;
  filter:blur(4.2px);
  transform:scale(.82);
}

/* Navigation sits directly under the carousel with enough breathing room. */
.hero-carousel-pager{
  margin-top:1.3rem!important;
}

/* CTA is deliberately pushed farther down from the slider controls. */
.hero-carousel-actions{
  margin:1.8rem 0 0!important;
}

/* Keep decorative graphics subordinate to the centered content package. */
.hero-carousel-v10 .hero-arus-line-centered{
  opacity:.17;
}
.hero-carousel-v10 .hero-ria-wave-centered{
  opacity:.38;
}

/* Tablet: maintain optical vertical balance without making the section huge. */
@media(max-width:900px){
  .hero-carousel-v10{
    min-height:680px;
    padding:3.4rem 0 4rem;
  }

  .hero-carousel-v10 .premium-hero-center-shell{
    min-height:560px;
  }

  .hero-message-carousel{
    margin-top:2.3rem;
  }

  .hero-carousel-actions{
    margin-top:1.65rem!important;
  }
}

/* Mobile: keep the same hierarchy, with equal-feeling top/bottom breathing room. */
@media(max-width:620px){
  .hero-carousel-v10{
    min-height:640px;
    padding:2.8rem 0 3.2rem;
  }

  .hero-carousel-v10 .premium-hero-center-shell{
    min-height:535px;
    display:flex;
    align-items:center;
  }

  .hero-message-carousel{
    margin-top:2rem;
  }

  .hero-carousel-pager{
    margin-top:1.05rem!important;
  }

  .hero-carousel-actions{
    margin-top:1.55rem!important;
  }

  .hero-message-card.is-prev,
  .hero-message-card.is-next{
    opacity:.18;
    filter:blur(4px);
    transform:scale(.8);
  }
}

/* Accessibility: honor reduced motion while keeping layout intact. */
@media(prefers-reduced-motion:reduce){
  .hero-message-track,
  .hero-message-card{
    transition-duration:.01ms!important;
  }
}

/* =========================================================
   PANTURIA WORLDCLASS V12
   Public website refinement based on PANTURIA brand system.
   ========================================================= */

:root{
  --v12-container:1240px;
  --v12-section:clamp(4.5rem,8vw,7rem);
  --v12-ink:#12283d;
  --v12-cream:#fbf5ec;
}

.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.container{width:min(calc(100% - 3rem),var(--v12-container));margin-inline:auto}
.section{padding:var(--v12-section) 0}

/* Header */
.site-header{padding:.72rem 0;background:rgba(251,245,236,.96);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,50,77,.08)}
.nav-wrap{min-height:64px;padding:.5rem .65rem .5rem 1rem;border-radius:999px;border:1px solid rgba(23,50,77,.14);box-shadow:0 8px 28px rgba(23,50,77,.08)}
.brand-logo{height:34px}
.site-nav{gap:.15rem}
.site-nav .nav-link{position:relative}
.site-nav .nav-link.is-current{background:var(--sea-mist)}
.site-nav .nav-link.is-current::after{content:"";position:absolute;left:50%;bottom:.2rem;width:5px;height:5px;border-radius:50%;background:var(--ria-coral);transform:translateX(-50%)}
.nav-submit-event{margin-left:.35rem}

/* Hero */
.v12-hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#0f2f4a 0%,#173b5d 100%);color:#fff;min-height:clamp(720px,82vh,880px)}
.v12-hero-art{position:absolute;inset:0;pointer-events:none}
.v12-hero-line,.v12-hero-wave{position:absolute;inset:auto 0 0;width:100%;height:100%;overflow:visible}
.v12-hero-line path{fill:none;stroke:var(--arus-blue);stroke-width:3;opacity:.18}
.v12-hero-wave{height:34%;bottom:-7%;opacity:.38}
.v12-hero-wave path{fill:none;stroke-width:32;stroke-linecap:round}
.v12-wave-blue{stroke:var(--arus-blue)}.v12-wave-coral{stroke:var(--ria-coral)}.v12-wave-gold{stroke:var(--sunset-gold)}
.v12-hero-shell{min-height:clamp(650px,75vh,810px);display:flex;align-items:center;justify-content:center;position:relative;z-index:2}
.v12-hero-package{width:min(100%,1120px);display:flex;flex-direction:column;align-items:center;text-align:center;margin:auto}
.v12-brand-lockup{width:min(100%,520px)}
.v12-hero-logo{display:block;width:min(100%,500px);height:auto;margin-inline:auto}
.v12-hero-tagline{margin:.78rem auto 0;color:#fff;font-family:var(--font-heading);font-size:clamp(.98rem,1.6vw,1.24rem);font-weight:800;letter-spacing:.2em;line-height:1;text-transform:uppercase;white-space:nowrap}
.v12-message-carousel{margin-top:clamp(2.5rem,4vw,3.2rem)}
.v12-message-carousel .hero-message-viewport{width:min(100vw,1040px);height:126px}
.v12-message-carousel .hero-message-card{--hero-card-width:430px}
.v12-hero-pager{margin-top:1.15rem!important}
.v12-hero-actions{margin-top:2rem!important}
.v12-hero-actions .button{min-width:144px}
.v12-hero-actions .premium-secondary{color:#fff;border-color:rgba(255,255,255,.45)}

/* Marquee */
.v12-marquee{border-top:1px solid rgba(242,181,68,.36);border-bottom:1px solid rgba(242,181,68,.36)}

/* Discovery */
.v12-discovery-section{background:var(--warm-sand-soft);padding:clamp(3.2rem,6vw,5rem) 0}
.v12-discovery-shell{display:grid;grid-template-columns:minmax(0,.82fr) minmax(420px,1.18fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.v12-discovery-copy h2{margin:.45rem 0 .8rem;max-width:13ch}
.v12-discovery-copy p{color:var(--muted);max-width:48ch}
.v12-search{display:grid;grid-template-columns:1fr auto;gap:.65rem;padding:.55rem;background:#fff;border:1px solid rgba(23,50,77,.14);border-radius:1.35rem;box-shadow:var(--shadow-sm)}
.v12-search input{border:0;background:transparent;min-height:48px;padding:0 .75rem;color:var(--text);font-size:1rem;outline:0}
.v12-search .button{min-width:92px}
.v12-chip-row{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.65rem;margin-top:.25rem}
.v12-chip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.62rem 1rem;border-radius:999px;background:#fff;border:1px solid rgba(23,50,77,.16);color:var(--pantura-navy);text-decoration:none;font-weight:750;font-size:.88rem;cursor:pointer}
.v12-chip:hover,.v12-chip.is-active{background:var(--pantura-navy);color:#fff;border-color:var(--pantura-navy)}

/* Shared section head */
.v12-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}
.v12-section-head h2{margin:.4rem 0 0;max-width:15ch}
.v12-head-side{max-width:38ch}.v12-head-side p{color:var(--muted);margin-bottom:.75rem}

/* Event visuals */
.v12-featured-event{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.7fr);background:var(--pantura-navy);border-radius:2rem;overflow:hidden;box-shadow:var(--shadow);margin-bottom:1.25rem}
.v12-featured-media{min-height:420px;background:#0e263a;overflow:hidden}.v12-featured-media img{width:100%;height:100%;min-height:420px;object-fit:cover;display:block}
.v12-featured-copy{padding:clamp(1.8rem,4vw,3rem);display:flex;flex-direction:column;justify-content:center;color:#fff}
.v12-featured-copy h3{font-size:clamp(1.9rem,3.5vw,3rem);margin:.7rem 0 .85rem;color:#fff}.v12-featured-copy h3 a{color:inherit;text-decoration:none}
.v12-event-label{display:inline-flex;width:max-content;padding:.38rem .7rem;border-radius:999px;background:var(--sunset-gold);color:var(--deep-charcoal);font-size:.68rem;line-height:1;font-weight:850;text-transform:uppercase;letter-spacing:.055em}
.v12-event-meta{display:flex;flex-wrap:wrap;gap:.45rem .85rem;color:var(--muted);font-size:.85rem}
.v12-featured-copy .v12-event-meta{color:rgba(255,255,255,.72)}
.v12-event-meta span+span::before{content:"•";color:var(--sunset-gold);margin-right:.6rem}
.v12-price{font-family:var(--font-heading);font-size:1.2rem;font-weight:800;color:var(--sunset-gold);margin:1rem 0 0}
.v12-event-grid,.v12-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.v12-event-card,.v12-catalog-card{background:#fff;border:1px solid rgba(23,50,77,.12);border-radius:1.45rem;overflow:hidden;box-shadow:0 8px 26px rgba(23,50,77,.07);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.v12-event-card:hover,.v12-catalog-card:hover{transform:translateY(-4px);box-shadow:0 18px 44px rgba(23,50,77,.12);border-color:rgba(23,50,77,.24)}
.v12-event-card-media,.v12-catalog-media{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--pantura-navy)}
.v12-event-card-media img,.v12-catalog-media img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .45s ease}
.v12-event-card:hover img,.v12-catalog-card:hover img{transform:scale(1.025)}
.v12-event-fallback{width:100%;height:100%;position:relative;overflow:hidden;background:var(--pantura-navy)}
.v12-event-fallback span{position:absolute;left:-12%;width:125%;height:18%;border-radius:999px;transform:rotate(-8deg)}
.v12-event-fallback span:nth-child(1){bottom:34%;background:var(--arus-blue)}.v12-event-fallback span:nth-child(2){bottom:21%;background:var(--ria-coral)}.v12-event-fallback span:nth-child(3){bottom:8%;background:var(--sunset-gold)}
.v12-event-card-body,.v12-catalog-body{padding:1.2rem}
.v12-event-card h3,.v12-catalog-card h3{font-size:1.12rem;line-height:1.18;margin:.7rem 0 .7rem}.v12-event-card h3 a,.v12-catalog-card h3 a{color:inherit;text-decoration:none}
.v12-card-foot{display:flex;justify-content:space-between;gap:1rem;align-items:center;margin-top:1rem;padding-top:.9rem;border-top:1px solid var(--border)}
.v12-card-foot strong{font-size:.9rem;color:var(--pantura-navy)}.v12-card-foot a{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--sea-mist);color:var(--pantura-navy);text-decoration:none;font-weight:900}
.v12-card-topline{display:flex;justify-content:space-between;gap:.75rem;align-items:center}.v12-card-topline>span:last-child{font-size:.78rem;color:var(--muted);font-weight:700}

/* City */
.v12-city-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(2rem,6vw,5rem);align-items:start}.v12-city-layout h2{margin:.45rem 0 0;max-width:12ch}
.v12-city-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.v12-city-grid a{display:flex;justify-content:space-between;gap:1rem;align-items:center;min-height:72px;padding:1rem 1.15rem;border-radius:1rem;background:#fff;border:1px solid rgba(23,50,77,.1);color:var(--pantura-navy);text-decoration:none;font-family:var(--font-heading);font-weight:750;box-shadow:var(--shadow-sm)}.v12-city-grid a:hover{border-color:var(--arus-blue);transform:translateY(-2px)}

/* Experience */
.v12-experience-section{position:relative;overflow:hidden;background:linear-gradient(145deg,#0e263a,#173b5d);color:#fff}.v12-experience-section h2{color:#fff}.v12-experience-art{position:absolute;inset:0;pointer-events:none}.v12-experience-art span{position:absolute;right:-8rem;bottom:-12rem;width:38rem;height:38rem;border-radius:50%;border:1px solid rgba(255,255,255,.12);box-shadow:0 0 0 4rem rgba(46,120,166,.12),0 0 0 8rem rgba(242,181,68,.06)}
.v12-experience-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,6rem);align-items:center}.v12-experience-grid h2{font-size:clamp(2.8rem,6vw,5.8rem);line-height:.92;margin:.65rem 0 0}.v12-experience-grid h2 span{color:var(--sunset-gold)}
.v12-experience-copy{max-width:560px}.v12-experience-en{font-family:var(--font-heading);font-size:clamp(1.5rem,2.6vw,2.4rem);font-weight:800;line-height:1.05;color:#fff;margin:0 0 1rem}.v12-experience-copy>p:not(.v12-experience-en){color:rgba(255,255,255,.78)}.v12-experience-small{font-size:.95rem;margin-top:1.2rem}

/* Stories */
.v12-story-grid,.v12-story-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.v12-story-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.v12-story-card{background:#fff;border:1px solid rgba(23,50,77,.1);border-radius:1.5rem;overflow:hidden;box-shadow:var(--shadow-sm)}
.v12-story-media{display:block;position:relative;aspect-ratio:16/10;overflow:hidden;background:var(--pantura-navy)}
.v12-story-body{padding:1.25rem}.v12-story-meta{display:flex;justify-content:space-between;gap:1rem;color:var(--muted);font-size:.76rem;font-weight:750;text-transform:uppercase;letter-spacing:.05em}.v12-story-body h3,.v12-story-body h2{font-size:1.35rem;margin:.65rem 0}.v12-story-body h2{font-size:1.6rem}.v12-story-body h3 a,.v12-story-body h2 a{color:inherit;text-decoration:none}.v12-story-body p{color:var(--muted);font-size:.92rem}
.v12-story-filter{display:flex;flex-wrap:wrap;gap:.65rem;margin-bottom:1.5rem}

/* Partner CTA */
.v12-partner-card{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:clamp(2rem,5vw,3.5rem);border-radius:2rem;background:#fff;border:1px solid rgba(23,50,77,.12);box-shadow:var(--shadow)}.v12-partner-copy h2{margin:.45rem 0 .75rem;max-width:15ch}.v12-partner-copy p{color:var(--muted);max-width:58ch}.v12-partner-actions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end}

/* Catalog */
.v12-catalog-hero{padding:clamp(4rem,7vw,6rem) 0 3.2rem;background:linear-gradient(145deg,#0e263a,#173b5d);color:#fff}.v12-catalog-hero h1{color:#fff;font-size:clamp(3rem,6vw,5rem);margin:.45rem 0 .9rem}.v12-catalog-hero p{color:rgba(255,255,255,.78)}.v12-catalog-hero-grid{display:grid;grid-template-columns:1.1fr .55fr;gap:2rem;align-items:end}.v12-catalog-note{padding:1.25rem;border:1px solid rgba(255,255,255,.14);border-radius:1.2rem;background:rgba(255,255,255,.06)}.v12-catalog-note span{color:var(--sunset-gold);font-weight:850;font-size:.78rem;letter-spacing:.12em}.v12-catalog-note p{margin:.45rem 0 0;font-size:.9rem}
.v12-filter-band{background:var(--warm-sand-soft);border-bottom:1px solid rgba(23,50,77,.08);padding:1.1rem 0}.v12-event-filter{display:grid;grid-template-columns:minmax(260px,1.2fr) minmax(420px,.8fr);gap:.75rem;align-items:center}.v12-filter-search input,.v12-filter-selects select{width:100%;min-height:48px;border:1px solid rgba(23,50,77,.16);border-radius:.9rem;background:#fff;color:var(--text);padding:.75rem 1rem}.v12-filter-selects{display:grid;grid-template-columns:1fr 1fr auto;gap:.65rem}.v12-event-chip-row{margin-top:.9rem}.v12-results-head{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:1.6rem}.v12-results-head h2{margin:.4rem 0 0}.v12-results-count{font-weight:800;color:var(--muted)}

/* Event detail */
.v12-event-detail-hero{padding:clamp(3rem,6vw,5.5rem) 0;background:linear-gradient(145deg,#0e263a,#173b5d);color:#fff}.v12-event-detail-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,.8fr);gap:clamp(2rem,6vw,5rem);align-items:center}.v12-back-link{display:inline-flex;margin-bottom:1.1rem;color:rgba(255,255,255,.72);text-decoration:none;font-size:.88rem}.v12-event-detail-copy h1{color:#fff;font-size:clamp(3rem,6.5vw,5.6rem);line-height:.96;margin:.8rem 0 1rem;max-width:13ch}.v12-event-tagline{font-size:1.1rem;color:rgba(255,255,255,.82);max-width:52ch}.v12-event-detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin:1.7rem 0}.v12-event-detail-meta>div{padding:1rem;border-radius:1rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12)}.v12-event-detail-meta small{display:block;color:var(--sunset-gold);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:.35rem}.v12-event-detail-meta strong{display:block;color:#fff;font-size:.9rem}.v12-event-detail-meta span{display:block;color:rgba(255,255,255,.66);font-size:.82rem;margin-top:.2rem}.v12-event-detail-actions{display:flex;gap:.75rem;flex-wrap:wrap}.v12-event-detail-actions .premium-secondary{color:#fff;border-color:rgba(255,255,255,.38)}
.v12-event-detail-visual{border-radius:2rem;overflow:hidden;aspect-ratio:16/10;border:2px solid rgba(242,181,68,.65);box-shadow:0 30px 80px rgba(0,0,0,.2)}.v12-event-detail-visual img{width:100%;height:100%;object-fit:cover;display:block}.v12-detail-fallback{height:100%}
.v12-event-content-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.55fr);gap:clamp(2rem,6vw,5rem);align-items:start}.v12-event-story h2{margin:.4rem 0 1.2rem}.v12-prose{font-size:1.02rem;color:#45515d;line-height:1.8}.v12-organizer-card{display:flex;justify-content:space-between;gap:1.5rem;align-items:center;margin-top:2.2rem;padding:1.15rem;border-radius:1rem;background:var(--sea-mist)}.v12-organizer-card span{display:block;font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-weight:800}.v12-organizer-card strong{display:block;color:var(--pantura-navy);margin-top:.15rem}
.v12-ticket-panel{position:sticky;top:105px;padding:1.3rem;border-radius:1.6rem;background:var(--warm-sand-soft);border:1px solid rgba(23,50,77,.12)}.v12-ticket-panel-head h2{font-size:1.8rem;margin:.35rem 0 1rem}.v12-ticket-list{display:grid;gap:.8rem}.v12-ticket-option{padding:1.05rem;border-radius:1rem;background:#fff;border:1px solid rgba(23,50,77,.12)}.v12-ticket-option-top{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start}.v12-ticket-option-top span{font-size:.65rem;text-transform:uppercase;color:var(--arus-blue);font-weight:850;letter-spacing:.06em}.v12-ticket-option h3{margin:.25rem 0;font-size:1.05rem}.v12-ticket-option-top>strong{color:var(--pantura-navy);font-family:var(--font-heading);white-space:nowrap}.v12-ticket-option p{font-size:.86rem;color:var(--muted);margin:.55rem 0}.v12-ticket-option-meta{display:flex;gap:.7rem;flex-wrap:wrap;font-size:.76rem;color:var(--muted);margin:.75rem 0}.v12-ticket-option .button{width:100%;min-height:42px}.v12-ticket-status{display:block;text-align:center;padding:.7rem;border-radius:.75rem;background:var(--sea-mist);color:var(--pantura-navy);font-weight:800;font-size:.82rem}.v12-ticket-empty{padding:1rem;border-radius:1rem;background:#fff;border:1px dashed var(--border)}.v12-ticket-empty p{color:var(--muted);font-size:.88rem;margin:.35rem 0 0}

/* Story archive / article */
.v12-story-hero{position:relative;overflow:hidden;padding:clamp(4rem,8vw,7rem) 0;background:var(--pantura-navy);color:#fff}.v12-story-hero-art{position:absolute;inset:0;pointer-events:none}.v12-story-hero-art span:first-child{position:absolute;right:-6rem;bottom:-11rem;width:34rem;height:34rem;border:1px solid rgba(242,181,68,.18);border-radius:50%}.v12-story-hero-art span:last-child{position:absolute;left:-6rem;bottom:2rem;width:20rem;height:2rem;background:var(--arus-blue);border-radius:999px;transform:rotate(-7deg);opacity:.55}.v12-story-hero-inner{position:relative;z-index:1}.v12-story-hero h1{color:#fff;font-size:clamp(3rem,7vw,6rem);margin:.5rem 0 .9rem}.v12-story-hero p{max-width:52ch;color:rgba(255,255,255,.8);font-size:1.05rem}.v12-story-archive [data-story-card][hidden]{display:none!important}
.v12-article-hero{position:relative;overflow:hidden;padding:clamp(4rem,8vw,7rem) 0;background:var(--pantura-navy);color:#fff}.v12-article-hero-art{position:absolute;inset:0;pointer-events:none}.v12-article-hero-art span{position:absolute;left:-10%;width:120%;height:14%;border-radius:999px;transform:rotate(-8deg);opacity:.75}.v12-article-hero-art span:nth-child(1){bottom:22%;background:var(--arus-blue)}.v12-article-hero-art span:nth-child(2){bottom:10%;background:var(--ria-coral)}.v12-article-hero-art span:nth-child(3){bottom:-2%;background:var(--sunset-gold)}.v12-article-hero-inner{position:relative;z-index:1;max-width:900px;margin-inline:auto}.v12-article-hero .v12-back-link{color:rgba(255,255,255,.72)}.v12-article-hero .v12-story-meta{color:rgba(255,255,255,.7);margin-bottom:.7rem}.v12-article-hero h1{color:#fff;font-size:clamp(3rem,6.5vw,5.8rem);margin:.5rem 0 1rem}.v12-article-hero p{font-size:1.12rem;color:rgba(255,255,255,.82);max-width:62ch}.v12-article-layout{display:grid;grid-template-columns:minmax(0,760px) 220px;gap:clamp(2rem,7vw,6rem);justify-content:center;align-items:start}.v12-article-body{font-size:1.08rem;line-height:1.9;color:#3e4b58}.v12-article-body p+p{margin-top:1.4rem}.v12-article-body blockquote{margin:2.2rem 0 0;padding:1.3rem 1.5rem;border-left:4px solid var(--sunset-gold);background:var(--warm-sand-soft);font-family:var(--font-heading);font-weight:800;color:var(--pantura-navy)}.v12-article-aside{position:sticky;top:110px;display:grid;gap:.65rem}.v12-article-aside span{font-size:.72rem;text-transform:uppercase;color:var(--muted);font-weight:800;letter-spacing:.07em}

/* Partner pages */
.v12-partner-hero{padding:clamp(4rem,8vw,7rem) 0;background:linear-gradient(145deg,#0e263a,#173b5d);color:#fff}.v12-partner-hero-grid{display:grid;grid-template-columns:1.05fr .65fr;gap:clamp(2rem,7vw,6rem);align-items:center}.v12-partner-hero h1{color:#fff;font-size:clamp(3rem,7vw,6rem);line-height:.95;margin:.6rem 0 1rem;max-width:12ch}.v12-partner-hero p{color:rgba(255,255,255,.78);font-size:1.06rem;max-width:58ch}.v12-partner-hero .button-secondary{color:#fff;border-color:rgba(255,255,255,.42)}.v12-partner-hero-card{min-height:300px;padding:2rem;border-radius:2rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);display:flex;flex-direction:column;justify-content:center;align-items:center}.v12-partner-hero-card img{width:min(100%,320px)}.v12-partner-hero-card span{color:#fff;font-family:var(--font-heading);font-weight:800;letter-spacing:.16em;margin-top:1rem}.v12-partner-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.v12-partner-feature-grid article{padding:1.35rem;border:1px solid var(--border);border-radius:1.2rem;background:#fff}.v12-partner-feature-grid article>span{font-family:var(--font-heading);color:var(--ria-coral);font-weight:800}.v12-partner-feature-grid h3{margin:.75rem 0 .45rem}.v12-partner-feature-grid p{font-size:.9rem;color:var(--muted)}.v12-partner-flow{display:grid;grid-template-columns:.7fr 1.3fr;gap:clamp(2rem,7vw,6rem)}.v12-flow-list{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.v12-flow-list article{padding:1.1rem;border-radius:1rem;background:#fff;border:1px solid var(--border)}.v12-flow-list strong{font-family:var(--font-heading);color:var(--pantura-navy)}.v12-flow-list p{font-size:.86rem;color:var(--muted);margin:.35rem 0 0}.v12-partner-dark{background:var(--pantura-navy);color:#fff}.v12-partner-dark h2{color:#fff}.v12-partner-dark-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,6rem);align-items:center}.v12-capability-list{display:flex;flex-wrap:wrap;gap:.65rem}.v12-capability-list span{padding:.7rem .9rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);font-size:.85rem;font-weight:750}.v12-final-cta{display:flex;justify-content:space-between;gap:2rem;align-items:center}.v12-final-cta h2{margin:.4rem 0 .75rem}.v12-final-cta p{color:var(--muted)}

/* About */
.v12-about-platform-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,6rem);align-items:center}.v12-about-platform-grid h2{margin:.4rem 0 0}.v12-about-platform-grid p{color:var(--muted)}

/* FAQ */
.v12-faq-hero{padding:clamp(4rem,7vw,6rem) 0;background:var(--warm-sand-soft)}.v12-faq-hero-grid{display:flex;justify-content:space-between;gap:2rem;align-items:end}.v12-faq-hero h1{font-size:clamp(3rem,7vw,5.8rem);margin:.5rem 0 .8rem}.v12-faq-hero p{color:var(--muted)}.v12-faq-contact{display:grid;gap:.2rem;text-align:right}.v12-faq-contact span{font-size:.75rem;color:var(--muted);text-transform:uppercase;font-weight:800}.v12-faq-contact a{font-family:var(--font-heading);font-weight:800;color:var(--pantura-navy)}.v12-faq-layout{display:grid;grid-template-columns:180px minmax(0,800px);gap:clamp(2rem,7vw,6rem);justify-content:center}.v12-faq-index{display:grid;gap:.75rem;align-content:start;position:sticky;top:110px}.v12-faq-index span{font-size:.7rem;font-weight:800;color:var(--muted);letter-spacing:.08em}.v12-faq-list{margin-top:0}

/* Footer */
.footer-brand strong{color:var(--sunset-gold)}

@media(max-width:1080px){
  .v12-discovery-shell,.v12-city-layout,.v12-event-detail-grid,.v12-event-content-grid,.v12-partner-hero-grid,.v12-partner-flow,.v12-partner-dark-grid,.v12-about-platform-grid{grid-template-columns:1fr}
  .v12-partner-feature-grid{grid-template-columns:1fr 1fr}
  .v12-featured-event{grid-template-columns:1fr}.v12-featured-media{min-height:320px}.v12-featured-media img{min-height:320px}
  .v12-event-grid,.v12-catalog-grid,.v12-story-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .v12-ticket-panel,.v12-article-aside,.v12-faq-index{position:static}
  .v12-article-layout{grid-template-columns:minmax(0,760px)}
  .v12-faq-layout{grid-template-columns:1fr}
  .v12-faq-index{display:flex;flex-wrap:wrap}
}

@media(max-width:820px){
  .container{width:min(calc(100% - 2rem),var(--v12-container))}
  .v12-hero{min-height:660px}.v12-hero-shell{min-height:600px}.v12-brand-lockup{width:min(calc(100% - 2rem),420px)}.v12-hero-tagline{font-size:.9rem;letter-spacing:.16em}
  .v12-message-carousel .hero-message-viewport{width:100vw;height:120px}
  .v12-hero-wave{opacity:.25;height:24%}.v12-hero-line{display:none}
  .v12-discovery-shell{grid-template-columns:1fr}.v12-event-filter{grid-template-columns:1fr}.v12-filter-selects{grid-template-columns:1fr 1fr auto}
  .v12-catalog-hero-grid{grid-template-columns:1fr}.v12-catalog-note{max-width:520px}
  .v12-event-detail-meta{grid-template-columns:1fr}
  .v12-story-archive-grid{grid-template-columns:1fr}
  .v12-experience-grid{grid-template-columns:1fr}.v12-experience-grid h2{font-size:clamp(3rem,12vw,5rem)}
  .v12-section-head,.v12-results-head,.v12-partner-card,.v12-final-cta,.v12-faq-hero-grid{align-items:flex-start;flex-direction:column}
  .v12-partner-actions{justify-content:flex-start}
  .v12-faq-contact{text-align:left}
}

@media(max-width:620px){
  .container{width:min(calc(100% - 1.25rem),var(--v12-container))}
  .v12-hero{min-height:620px}.v12-hero-shell{min-height:560px}.v12-hero-package{padding-top:.4rem}.v12-brand-lockup{width:min(calc(100% - 2rem),350px)}.v12-hero-tagline{font-size:.78rem;letter-spacing:.14em}
  .v12-message-carousel{margin-top:2.15rem}.v12-message-carousel .hero-message-viewport{height:112px}.v12-hero-pager{margin-top:.9rem!important}.v12-hero-actions{margin-top:1.65rem!important;width:min(calc(100% - 2rem),340px)}.v12-hero-actions .button{flex:1 1 140px}
  .v12-discovery-section{padding:2.8rem 0}.v12-search{grid-template-columns:1fr auto}.v12-search .button{min-width:78px;padding-inline:.8rem}
  .v12-event-grid,.v12-catalog-grid,.v12-story-grid,.v12-city-grid,.v12-partner-feature-grid,.v12-flow-list{grid-template-columns:1fr}
  .v12-featured-media{min-height:240px}.v12-featured-media img{min-height:240px}.v12-featured-copy{padding:1.4rem}.v12-featured-copy h3{font-size:1.8rem}
  .v12-filter-selects{grid-template-columns:1fr}.v12-event-filter{gap:.6rem}.v12-event-chip-row{overflow:auto;flex-wrap:nowrap;padding-bottom:.25rem}.v12-chip{white-space:nowrap}
  .v12-event-detail-visual{aspect-ratio:4/3}.v12-event-detail-copy h1{font-size:clamp(2.6rem,13vw,4rem)}.v12-event-detail-actions .button{width:100%}
  .v12-organizer-card{align-items:flex-start;flex-direction:column}
  .v12-partner-hero h1{font-size:clamp(2.8rem,13vw,4.5rem)}.v12-partner-hero-card{min-height:220px}.v12-partner-hero-card span{font-size:.78rem}
  .v12-article-hero h1{font-size:clamp(2.8rem,13vw,4.4rem)}.v12-article-hero-art span{height:9%}
}
.site-header.is-scrolled{box-shadow:0 10px 28px rgba(23,50,77,.08)}
.auth-logo{filter:none!important}


/* =========================================================
   PANTURIA V13 — SUBTLE FLOATING HERO MOTIFS
   Reference: user-approved manual hero composition.
   Decorative graphics stay intentionally very faint, stable,
   and never compete with logo, carousel, CTA, or marquee.
   ========================================================= */

.v13-hero-motifs{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
}

.v13-motif{
  position:absolute;
  display:block;
  overflow:visible;
  color:var(--arus-blue);
  opacity:.075;
  transform:translate3d(0,0,0);
  transform-origin:center;
  will-change:transform;
}

/* Color language stays within the locked PANTURIA palette. */
.v13-motif-cloud path,
.v13-motif-arus path,
.v13-motif-spiral path,
.v13-motif-bottom-wave path{
  fill:none;
  stroke:currentColor;
  stroke-width:6;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.v13-motif-cloud{
  color:var(--sunset-gold);
  opacity:.065;
}

.v13-motif-cloud path:nth-child(2){
  stroke:var(--arus-blue);
}

.v13-motif-cloud path:nth-child(3){
  stroke:var(--ria-coral);
}

.v13-motif-arus{
  color:var(--sunset-gold);
  opacity:.07;
}

.v13-motif-spiral{
  color:var(--ria-coral);
  opacity:.06;
}

.v13-motif-bottom-wave{
  color:var(--arus-blue);
  opacity:.085;
}

.v13-motif-bottom-wave path:nth-child(2){
  stroke:var(--sunset-gold);
}

.v13-motif-bottom-wave path:nth-child(3){
  stroke:var(--ria-coral);
}

.v13-motif-spark{
  opacity:.055;
}

.v13-spark-star{
  fill:var(--arus-blue);
  stroke:none;
}

.v13-spark-ray{
  fill:none;
  stroke:var(--sunset-gold);
  stroke-width:7;
  stroke-linecap:round;
}

/* Placement follows the manually approved composition,
   while preserving the central text safe zone. */
.v13-motif-cloud-left{
  width:245px;
  left:3.8%;
  top:8%;
  animation:v13-float-a 17s ease-in-out infinite alternate;
}

.v13-motif-cloud-right{
  width:220px;
  right:8%;
  top:25%;
  animation:v13-float-b 21s ease-in-out -4s infinite alternate;
}

.v13-motif-arus-left{
  width:160px;
  left:23%;
  top:29%;
  animation:v13-float-c 19s ease-in-out -8s infinite alternate;
}

.v13-motif-spark-right{
  width:150px;
  right:-1.5%;
  top:4%;
  animation:v13-float-a 23s ease-in-out -5s infinite alternate;
}

.v13-motif-spiral-left{
  width:165px;
  left:-3%;
  top:40%;
  animation:v13-float-b 20s ease-in-out -9s infinite alternate;
}

.v13-motif-bottom-left{
  width:430px;
  left:0;
  bottom:-4%;
  animation:v13-float-c 24s ease-in-out -3s infinite alternate;
}

.v13-motif-bottom-right{
  width:410px;
  right:-1%;
  bottom:-3%;
  animation:v13-float-a 22s ease-in-out -11s infinite alternate;
}

/* Slow vertical breathing only: no fast bouncing, no flicker. */
@keyframes v13-float-a{
  0%{transform:translate3d(0,-10px,0)}
  100%{transform:translate3d(0,14px,0)}
}

@keyframes v13-float-b{
  0%{transform:translate3d(0,12px,0)}
  100%{transform:translate3d(0,-12px,0)}
}

@keyframes v13-float-c{
  0%{transform:translate3d(0,-7px,0)}
  100%{transform:translate3d(0,11px,0)}
}

/* Existing V12 route / lower wave become quieter too,
   so all decoration reads as one subtle system. */
.v12-hero-line path{
  opacity:.08!important;
}

.v12-hero-wave{
  opacity:.12!important;
}

/* Keep content above all decorative elements. */
.v12-hero-shell{
  z-index:3;
}

/* Tablet: fewer visual voices and even softer opacity. */
@media(max-width:1000px){
  .v13-motif{
    opacity:.055;
  }

  .v13-motif-cloud-left{width:190px;left:-1%;top:8%}
  .v13-motif-cloud-right{width:170px;right:-2%;top:27%}
  .v13-motif-arus-left{display:none}
  .v13-motif-spark-right{width:110px;right:-4%;top:5%;opacity:.04}
  .v13-motif-spiral-left{width:125px;left:-5%;top:46%}
  .v13-motif-bottom-left{width:320px;left:-6%}
  .v13-motif-bottom-right{width:300px;right:-7%}
  .v12-hero-wave{opacity:.09!important}
}

/* Mobile: retain only two signature traces.
   This protects readability and keeps the hero premium. */
@media(max-width:620px){
  .v13-motif{display:none}

  .v13-motif-cloud-left,
  .v13-motif-bottom-right{
    display:block;
    opacity:.04;
  }

  .v13-motif-cloud-left{
    width:145px;
    left:-10%;
    top:8%;
  }

  .v13-motif-bottom-right{
    width:220px;
    right:-18%;
    bottom:0;
  }

  .v12-hero-line path{opacity:.055!important}
  .v12-hero-wave{opacity:.06!important}
}

/* Respect OS accessibility preference. */
@media(prefers-reduced-motion:reduce){
  .v13-motif{
    animation:none!important;
  }
}


/* =========================================================
   PANTURIA V14 — HERO MOTIF SCALE + MOTION ALIGNMENT
   Tujuan:
   - ukuran grafis lebih besar seperti komposisi manual user
   - opacity lebih ringan / tipis
   - seluruh grafis tambahan bergerak perlahan naik-turun
   - area tengah tetap bersih untuk logo, copy, CTA
   ========================================================= */

/* Base hero decorative field slightly calmer, but all elements alive */
.v12-hero-art{
  animation:v14-fieldFloat 18s ease-in-out infinite alternate;
}

.v12-hero-line{
  animation:v14-lineDrift 22s ease-in-out -5s infinite alternate;
}

.v12-hero-wave{
  animation:v14-waveDrift 24s ease-in-out -8s infinite alternate;
}

.v12-hero-line path{
  opacity:.06!important;
}

.v12-hero-wave{
  opacity:.10!important;
}

.v13-motif{
  opacity:.05;
  filter:none;
}

.v13-motif-cloud{
  opacity:.048;
}

.v13-motif-arus{
  opacity:.05;
}

.v13-motif-spiral{
  opacity:.045;
}

.v13-motif-bottom-wave{
  opacity:.058;
}

.v13-motif-spark{
  opacity:.04;
}

.v13-motif-cloud path,
.v13-motif-arus path,
.v13-motif-spiral path,
.v13-motif-bottom-wave path{
  stroke-width:6.5;
}

/* Manual composition matching: bigger ornaments, wider spread */
.v13-motif-cloud-left{
  width:340px;
  left:3.5%;
  top:7%;
  animation:v14-float-soft-a 20s ease-in-out infinite alternate;
}

.v13-motif-cloud-right{
  width:270px;
  right:13%;
  top:25.5%;
  animation:v14-float-soft-b 24s ease-in-out -6s infinite alternate;
}

.v13-motif-arus-left{
  width:210px;
  left:27%;
  top:31%;
  animation:v14-float-soft-c 19s ease-in-out -3s infinite alternate;
}

.v13-motif-spark-right{
  width:250px;
  right:-1%;
  top:3.5%;
  animation:v14-float-soft-a 25s ease-in-out -9s infinite alternate;
}

.v13-motif-spiral-left{
  width:190px;
  left:-1.5%;
  top:39%;
  animation:v14-float-soft-b 23s ease-in-out -11s infinite alternate;
}

.v13-motif-bottom-left{
  width:610px;
  left:-2%;
  bottom:-2.5%;
  animation:v14-float-soft-c 26s ease-in-out -4s infinite alternate;
}

.v13-motif-bottom-right{
  width:600px;
  right:-2%;
  bottom:-3%;
  animation:v14-float-soft-a 27s ease-in-out -13s infinite alternate;
}

@keyframes v14-fieldFloat{
  0%{transform:translate3d(0,-4px,0)}
  100%{transform:translate3d(0,6px,0)}
}

@keyframes v14-lineDrift{
  0%{transform:translate3d(0,-4px,0)}
  100%{transform:translate3d(0,5px,0)}
}

@keyframes v14-waveDrift{
  0%{transform:translate3d(0,0,0)}
  100%{transform:translate3d(0,8px,0)}
}

@keyframes v14-float-soft-a{
  0%{transform:translate3d(0,-8px,0)}
  100%{transform:translate3d(0,10px,0)}
}

@keyframes v14-float-soft-b{
  0%{transform:translate3d(0,10px,0)}
  100%{transform:translate3d(0,-8px,0)}
}

@keyframes v14-float-soft-c{
  0%{transform:translate3d(0,-6px,0)}
  100%{transform:translate3d(0,9px,0)}
}

/* keep center zone pristine */
.v12-hero-package{
  position:relative;
  z-index:4;
}

@media(max-width:1100px){
  .v13-motif-cloud-left{width:290px;left:1%;top:8%}
  .v13-motif-cloud-right{width:220px;right:9%;top:27%}
  .v13-motif-arus-left{width:180px;left:22%;top:34%}
  .v13-motif-spark-right{width:200px;right:-4%;top:4%}
  .v13-motif-spiral-left{width:155px;left:-3%;top:42%}
  .v13-motif-bottom-left{width:480px;left:-6%;bottom:-1%}
  .v13-motif-bottom-right{width:470px;right:-7%;bottom:-2%}
}

@media(max-width:820px){
  .v13-motif{opacity:.042}
  .v13-motif-cloud-left{width:220px;left:-2%;top:10%}
  .v13-motif-cloud-right{width:170px;right:-1%;top:29%}
  .v13-motif-arus-left{width:145px;left:18%;top:33%}
  .v13-motif-spark-right{width:150px;right:-8%;top:4%}
  .v13-motif-spiral-left{width:120px;left:-6%;top:46%}
  .v13-motif-bottom-left{width:360px;left:-8%;bottom:1%}
  .v13-motif-bottom-right{width:350px;right:-10%;bottom:0%}
  .v12-hero-wave{opacity:.085!important}
}

@media(max-width:620px){
  .v13-motif-cloud-left,
  .v13-motif-bottom-right,
  .v13-motif-spark-right{
    display:block;
  }

  .v13-motif-cloud-left{width:150px;left:-8%;top:8%;opacity:.035}
  .v13-motif-spark-right{width:120px;right:-10%;top:5%;opacity:.03}
  .v13-motif-bottom-right{width:245px;right:-18%;bottom:2%;opacity:.038}

  .v13-motif-cloud-right,
  .v13-motif-arus-left,
  .v13-motif-spiral-left,
  .v13-motif-bottom-left{display:none}

  .v12-hero-line path{opacity:.04!important}
  .v12-hero-wave{opacity:.055!important}
}

@media(prefers-reduced-motion:reduce){
  .v12-hero-art,
  .v12-hero-line,
  .v12-hero-wave,
  .v13-motif{
    animation:none!important;
  }
}


/* =========================================================
   PANTURIA V15 — HERO SCALE MATCH
   Reference measured from user's side-by-side Canva comparison.
   Target: central composition approximately 1.35–1.40x larger
   than the latest implementation, while preserving the hero frame.
   ========================================================= */

/* Hero keeps the same overall field; the content itself gets larger. */
.v12-hero{
  min-height:clamp(760px,86vh,920px);
}

.v12-hero-shell{
  min-height:clamp(700px,79vh,850px);
}

/* Brand lockup: target visual width ~36–38% of a desktop hero. */
.v12-brand-lockup{
  width:min(100%,680px);
}

.v12-hero-logo{
  width:min(100%,650px);
}

.v12-hero-tagline{
  margin-top:1rem;
  font-size:clamp(1.16rem,1.85vw,1.5rem);
  letter-spacing:.22em;
}

/* More vertical separation like the upper reference. */
.v12-message-carousel{
  margin-top:clamp(3.15rem,5vw,4.2rem);
}

/* Active pill is visibly larger, not merely wider. */
.v12-message-carousel .hero-message-viewport{
  width:min(100vw,1220px);
  height:162px;
}

.v12-message-carousel .hero-message-card{
  --hero-card-width:560px;
  min-height:118px;
  padding:1.25rem 2.15rem;
}

.v12-message-carousel .hero-message-card h2{
  font-size:clamp(1.08rem,1.5vw,1.34rem);
  line-height:1.14;
}

.v12-message-carousel .hero-message-card p{
  margin-top:.42rem;
  max-width:48ch;
  font-size:clamp(.9rem,1.08vw,1.02rem);
  line-height:1.42;
}

/* Side previews become proportionally larger too, matching the desired reference. */
.v12-message-carousel .hero-message-card.is-prev,
.v12-message-carousel .hero-message-card.is-next{
  transform:scale(.86);
}

/* Pager is slightly larger and easier to read at the new scale. */
.v12-hero-pager{
  margin-top:1.35rem!important;
  gap:.65rem;
}

.v12-hero-pager .premium-dot{
  width:10px;
  height:10px;
}

.v12-hero-pager .premium-dot.is-active{
  width:40px;
}

/* CTA pair scales with the central composition. */
.v12-hero-actions{
  margin-top:2.15rem!important;
  gap:1rem;
}

.v12-hero-actions .button{
  min-width:170px;
  min-height:52px;
  padding-inline:1.65rem;
  font-size:1.02rem;
}

/* Decorative motifs also scale up so they do not look undersized
   relative to the stronger center lockup. Opacity remains deliberately faint. */
.v13-motif-cloud-left{
  width:390px;
}

.v13-motif-cloud-right{
  width:315px;
}

.v13-motif-arus-left{
  width:240px;
}

.v13-motif-spark-right{
  width:285px;
}

.v13-motif-spiral-left{
  width:220px;
}

.v13-motif-bottom-left{
  width:690px;
}

.v13-motif-bottom-right{
  width:670px;
}

/* Preserve the airy, low-opacity appearance from the approved manual reference. */
.v13-motif-cloud-left,
.v13-motif-cloud-right{opacity:.045}

.v13-motif-arus-left{opacity:.047}
.v13-motif-spark-right{opacity:.038}
.v13-motif-spiral-left{opacity:.042}
.v13-motif-bottom-left,
.v13-motif-bottom-right{opacity:.052}

/* Desktop/laptop is the primary target of this patch. */
@media(min-width:1101px){
  .v12-hero-package{
    width:min(100%,1320px);
  }
}

/* Tablet gets a moderated increase, not the full desktop scale. */
@media(max-width:1100px){
  .v12-brand-lockup{width:min(calc(100% - 2rem),560px)}
  .v12-hero-logo{width:min(100%,540px)}
  .v12-hero-tagline{font-size:1.08rem}
  .v12-message-carousel .hero-message-viewport{height:146px}
  .v12-message-carousel .hero-message-card{--hero-card-width:500px;min-height:108px}
  .v12-hero-actions .button{min-width:158px;min-height:50px}
}

/* Mobile remains controlled so larger desktop sizing does not overflow. */
@media(max-width:620px){
  .v12-hero{
    min-height:650px;
  }

  .v12-hero-shell{
    min-height:590px;
  }

  .v12-brand-lockup{
    width:min(calc(100% - 1.5rem),390px);
  }

  .v12-hero-logo{
    width:min(100%,380px);
  }

  .v12-hero-tagline{
    font-size:.82rem;
    letter-spacing:.15em;
  }

  .v12-message-carousel{
    margin-top:2.35rem;
  }

  .v12-message-carousel .hero-message-viewport{
    height:122px;
  }

  .v12-message-carousel .hero-message-card{
    --hero-card-width:min(84vw,360px);
    min-height:98px;
    padding:1rem 1.25rem;
  }

  .v12-message-carousel .hero-message-card h2{
    font-size:.93rem;
  }

  .v12-message-carousel .hero-message-card p{
    font-size:.8rem;
  }

  .v12-hero-actions{
    margin-top:1.7rem!important;
    width:min(calc(100% - 1rem),370px);
  }

  .v12-hero-actions .button{
    min-width:0;
    min-height:47px;
    font-size:.92rem;
  }
}


/* =========================================================
   PANTURIA V24 — CLEAN MEGA MENDUNG DEPTH SYSTEM
   IMPORTANT:
   - V17–V23 conflicting motif rules were removed.
   - CSS only defines depth/placement.
   - Motion is driven by app.js via Web Animations API.
   ========================================================= */

.v13-hero-motifs.v17-mega-field{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
}

.v17-mega{
  position:absolute;
  display:block;
  max-width:none;
  height:auto;
  object-fit:contain;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
  transform-origin:center;
  will-change:transform,opacity,filter;
  backface-visibility:hidden;
  animation:none!important;
}

/* DEPTH 1 — FRONT: largest and clearest */
.v17-mega-bottom-left,
.v17-mega-bottom-right{
  width:360px;
  opacity:.085;
  filter:saturate(.78) contrast(.94) blur(.45px);
}
.v17-mega-bottom-left{left:-5.5%;bottom:-1%;}
.v17-mega-bottom-right{right:-5.5%;bottom:-1%;}

/* DEPTH 2 — MIDDLE: medium size, slight blur */
.v17-mega-top-left,
.v17-mega-top-right{
  width:205px;
  opacity:.066;
  filter:saturate(.72) contrast(.92) blur(1.35px);
}
.v17-mega-top-left{left:4%;top:8%;}
.v17-mega-top-right{right:7%;top:22%;}

/* DEPTH 3 — BACK: smallest, visibly softer */
.v17-mega-mid-left,
.v17-mega-mid-right{
  width:105px;
  opacity:.048;
  filter:saturate(.66) contrast(.89) blur(3.1px);
}
.v17-mega-mid-left{left:23%;top:31%;}
.v17-mega-mid-right{right:11%;top:49%;}

/* preserve hero foreground hierarchy */
.v12-hero-art{z-index:0}
.v12-hero-shell{position:relative;z-index:4}

@media(max-width:900px){
  .v17-mega-bottom-left,
  .v17-mega-bottom-right{
    width:270px;
    opacity:.076;
    filter:saturate(.74) contrast(.92) blur(.65px);
  }
  .v17-mega-bottom-left{left:-10%;bottom:1%;}
  .v17-mega-bottom-right{right:-10%;bottom:1%;}

  .v17-mega-top-left,
  .v17-mega-top-right{
    width:145px;
    opacity:.058;
    filter:saturate(.69) contrast(.90) blur(1.6px);
  }
  .v17-mega-top-left{left:2%;top:9%;}
  .v17-mega-top-right{right:0;top:24%;}

  .v17-mega-mid-left,
  .v17-mega-mid-right{
    width:80px;
    opacity:.041;
    filter:saturate(.63) contrast(.87) blur(3.4px);
  }
  .v17-mega-mid-left{left:18%;top:32%;}
  .v17-mega-mid-right{right:1%;top:50%;}
}

@media(max-width:620px){
  /* navbar logo remains compact on phone */
  .brand-logo{
    height:18px!important;
    width:auto!important;
    max-width:132px!important;
  }

  .v12-hero-logo{
    width:min(100%,286px)!important;
    max-width:286px!important;
  }

  /* keep mobile composition clean */
  .v17-mega-mid-left,
  .v17-mega-mid-right,
  .v17-mega-top-right{
    display:none!important;
  }

  /* middle/back cloud kept above and away from the main logo */
  .v17-mega-top-left{
    display:block!important;
    width:54px;
    left:7%;
    top:5.5%;
    opacity:.05;
    filter:saturate(.64) contrast(.88) blur(2.7px);
  }

  /* foreground clouds stay clear and mostly on the edges */
  .v17-mega-bottom-left{
    display:block!important;
    width:158px;
    left:-15%;
    bottom:7%;
    opacity:.069;
    filter:saturate(.70) contrast(.91) blur(.8px);
  }
  .v17-mega-bottom-right{
    display:block!important;
    width:150px;
    right:-16%;
    bottom:7%;
    opacity:.069;
    filter:saturate(.70) contrast(.91) blur(.8px);
  }
}


/* =========================================================
   PANTURIA MUSIC RADAR V1
   ========================================================= */
.music-home-section{background:#17324D;color:#fff;position:relative;overflow:hidden}
.music-home-section::before{content:"";position:absolute;inset:auto -8% -42% auto;width:520px;height:520px;border:1px solid rgba(242,181,68,.15);border-radius:50%;pointer-events:none}
.music-home-shell{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:clamp(2rem,6vw,6rem);align-items:center}
.music-home-copy .eyebrow{color:#F2B544}
.music-home-copy h2{font-family:Sora,sans-serif;font-size:clamp(3rem,7vw,6.8rem);line-height:.9;letter-spacing:-.055em;margin:.25rem 0 1.1rem;color:#fff}
.music-home-copy p{max-width:580px;color:rgba(255,255,255,.72);font-size:1.05rem;line-height:1.8}
.music-home-copy .button-secondary{border-color:rgba(255,255,255,.3);color:#fff;background:transparent}
.music-home-ranking{border-top:1px solid rgba(255,255,255,.16)}
.music-home-track{display:grid;grid-template-columns:54px 1fr auto;gap:1rem;align-items:center;padding:1.05rem 0;border-bottom:1px solid rgba(255,255,255,.13);color:#fff;text-decoration:none;transition:transform .2s ease,opacity .2s ease}
.music-home-track:hover{transform:translateX(6px)}
.music-home-number{font-family:Sora,sans-serif;font-size:.8rem;color:#F2B544;letter-spacing:.12em}
.music-home-name{display:grid;gap:.2rem;min-width:0}
.music-home-name strong{font-family:Sora,sans-serif;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.music-home-name small{color:rgba(255,255,255,.57);font-size:.84rem}
.music-home-trend{font-size:.72rem;font-weight:800;letter-spacing:.08em;color:#DCE7EF}

.music-radar-hero{padding-top:clamp(4rem,8vw,7rem);padding-bottom:clamp(4rem,8vw,7rem)}
.music-radar-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:end}
.music-radar-hero h1{font-family:Sora,sans-serif;font-size:clamp(4rem,10vw,9rem);line-height:.82;letter-spacing:-.07em;color:#17324D;margin:.4rem 0 1.4rem}
.music-radar-hero p{font-size:clamp(1rem,2vw,1.2rem);line-height:1.8;max-width:690px;color:#46515f}
.music-radar-stamp{width:190px;height:190px;border-radius:50%;border:1px solid rgba(23,50,77,.22);display:grid;place-content:center;text-align:center;transform:rotate(7deg)}
.music-radar-stamp strong{font-family:Sora,sans-serif;font-size:1.3rem;color:#17324D;letter-spacing:.08em}
.music-radar-stamp span{font-size:.68rem;letter-spacing:.18em;color:#F06449;font-weight:800;margin-top:.25rem}
.music-radar-player-section{padding-top:1.6rem;padding-bottom:1.6rem}
.music-radar-spotify-embed{display:block;border:0;border-radius:22px;overflow:hidden;background:#121212}
.music-radar-ranking-section{padding-top:clamp(3rem,6vw,6rem)}
.music-radar-list{border-top:1px solid #d9dee3}
.music-radar-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:1.2rem;align-items:center;padding:1.2rem .35rem;border-bottom:1px solid #e3e6e9}
.music-radar-rank{font-family:Sora,sans-serif;font-weight:800;font-size:.84rem;color:#F06449;letter-spacing:.1em}
.music-radar-track-copy{display:grid;gap:.18rem;min-width:0}
.music-radar-track-copy strong{font-family:Sora,sans-serif;color:#17324D;font-size:1.02rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.music-radar-track-copy span{color:#68727d;font-size:.88rem}
.music-radar-signal{display:flex;gap:.45rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.music-radar-trend,.music-radar-event-badge{display:inline-flex;align-items:center;min-height:28px;padding:.25rem .55rem;border-radius:999px;font-size:.66rem;font-weight:800;letter-spacing:.08em;border:1px solid #dfe4e8;color:#64707b;background:#fff}
.music-radar-trend.is-up{color:#17324D;border-color:rgba(46,120,166,.3);background:rgba(46,120,166,.08)}
.music-radar-trend.is-new{color:#8a4d00;border-color:rgba(242,181,68,.45);background:rgba(242,181,68,.14)}
.music-radar-event-badge{color:#a53f2b;border-color:rgba(240,100,73,.32);background:rgba(240,100,73,.08)}
.music-radar-open{font-size:.78rem;font-weight:800;color:#17324D;text-decoration:none;white-space:nowrap}
.music-radar-attribution{margin-top:1rem;font-size:.76rem;color:#7a838c}

.music-admin-page h1{font-size:clamp(2.2rem,5vw,4rem);margin:.35rem 0 .8rem}
.music-admin-title-row{display:flex;justify-content:space-between;gap:2rem;align-items:flex-end;margin-bottom:2rem}
.music-admin-title-row p{max-width:720px;color:#66717c;line-height:1.7}
.music-admin-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:1.5rem 0}
.music-admin-status-card .card-body{display:grid;gap:.45rem}
.music-admin-status-card span{font-size:.68rem;font-weight:800;letter-spacing:.12em;color:#7a838c;text-transform:uppercase}
.music-admin-status-card strong{font-family:Sora,sans-serif;font-size:1.25rem;color:#17324D}
.music-admin-status-card p{margin:0;color:#68727d;font-size:.88rem}
.music-admin-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1rem;margin:1rem 0}
.music-admin-grid h2,.music-admin-section-card h2{font-family:Sora,sans-serif;color:#17324D;margin:0 0 1rem}
.music-admin-inline-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.music-admin-check{display:flex;gap:.5rem;align-items:center;font-size:.9rem}
.music-admin-note,.music-admin-error-note{margin-top:1rem;padding:1rem;border-radius:14px;font-size:.82rem;line-height:1.6}
.music-admin-note{background:#F4E8D6;color:#5f4a2d}.music-admin-error-note{background:rgba(240,100,73,.09);color:#8f3a29}
.music-admin-section-card{margin-top:1rem}
.music-admin-section-head{display:flex;justify-content:space-between;gap:1rem;align-items:end;margin-bottom:1.2rem}.music-admin-section-head h2{margin:.2rem 0 0}.music-admin-section-head>span{font-size:.78rem;font-weight:800;color:#7a838c}
.music-source-form{display:grid;grid-template-columns:1fr 2fr 1.5fr .6fr .6fr auto;gap:.65rem;align-items:end;padding:1rem;background:#f7f4ef;border-radius:16px;margin-bottom:1rem}
.music-source-table-wrap{overflow:auto}.music-source-table{width:100%;border-collapse:collapse;font-size:.82rem}.music-source-table th,.music-source-table td{text-align:left;padding:.8rem;border-bottom:1px solid #e5e8eb;vertical-align:top}.music-source-table td:first-child{min-width:240px}.music-source-table small,.music-source-table em{display:block;margin-top:.2rem;color:#7b848d;max-width:360px;word-break:break-word}.music-source-table em{color:#a24734;font-style:normal}.music-source-actions,.music-admin-track-actions{display:flex;gap:.4rem;flex-wrap:wrap}.music-source-actions form,.music-admin-track-actions form,.inline-form{margin:0}
.music-admin-ranking-list{border-top:1px solid #e0e4e7}.music-admin-track-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:1rem;align-items:center;padding:.8rem 0;border-bottom:1px solid #e6e9ec}.music-admin-track-row>b{font-family:Sora,sans-serif;color:#F06449}.music-admin-track-row>div:nth-child(2){display:grid;gap:.2rem}.music-admin-track-row>div:nth-child(2) strong{color:#17324D}.music-admin-track-row>div:nth-child(2) span{font-size:.78rem;color:#7b848d}

@media(max-width:900px){.music-home-shell{grid-template-columns:1fr}.music-radar-hero-grid{grid-template-columns:1fr}.music-radar-stamp{display:none}.music-admin-status-grid,.music-admin-grid{grid-template-columns:1fr}.music-source-form{grid-template-columns:1fr 1fr}.music-admin-track-row{grid-template-columns:40px 1fr}.music-admin-track-actions{grid-column:2}}
@media(max-width:620px){.music-home-track{grid-template-columns:40px 1fr}.music-home-trend{grid-column:2;justify-self:start}.music-radar-row{grid-template-columns:46px 1fr}.music-radar-signal,.music-radar-open{grid-column:2;justify-content:flex-start}.music-admin-title-row{display:block}.music-admin-inline-fields,.music-source-form{grid-template-columns:1fr}.music-source-table{min-width:760px}.music-admin-track-row{grid-template-columns:34px 1fr}.music-admin-track-actions{grid-column:1/-1}}
