
:root{
  --pb-black:#080808;
  --pb-white:#f4f4f1;
  --pb-body:#d0d2cd;
  --pb-muted:#b5b8b2;
  --pb-line:#30322e;
  --pb-line-soft:#232522;
  --pb-max:1180px;
  --pb-display:"Ailerons","Ailerons Regular","Ailerons-Regular","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --pb-body-font:Montserrat,Arial,Helvetica,sans-serif;
}

html{scroll-behavior:smooth}
body.pacific-beast-production-page{margin:0;background:var(--pb-black);color:var(--pb-white)}
.pb-production,.pb-production *{box-sizing:border-box}
.pb-production{background:var(--pb-black);color:var(--pb-white);font-family:var(--pb-body-font);overflow:hidden}
.pb-production a{color:inherit;text-decoration:none}
.pb-production h1,.pb-production h2,.pb-production h3,.pb-production p{margin:0}
.pb-production h1,.pb-production h2,.pb-production .pb-service strong,.pb-production .pb-trainer-card__copy h3{
  font-family:var(--pb-display);
  font-weight:400;
  letter-spacing:.01em;
  text-transform:uppercase;
  color:var(--pb-white);
}
.pb-shell{width:min(100%,var(--pb-max));margin-inline:auto;padding-inline:clamp(24px,5vw,62px)}
.pb-section{padding-block:clamp(64px,7.5vw,96px)}
.pb-section--rule{border-top:1px solid var(--pb-line-soft)}
.pb-kicker{font-size:11px;line-height:1.4;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#c3c6c0}
.pb-body-copy{font-size:14px;line-height:1.78;color:var(--pb-body)}
.pb-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 22px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;transition:background-color .28s ease,color .28s ease,border-color .28s ease,transform .28s ease}
.pb-button--outline{border:1px solid #858981;color:var(--pb-white)!important}
.pb-button--light{background:var(--pb-white);border:1px solid var(--pb-white);color:#080808!important}
.pb-production a.pb-button--light,
.pb-production a.pb-button--light:link,
.pb-production a.pb-button--light:visited,
.pb-production a.pb-button--light:hover,
.pb-production a.pb-button--light:focus{color:#080808!important}
.pb-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}

.pb-header{position:relative;z-index:50;border-bottom:1px solid var(--pb-line-soft);background:#080808}
.pb-header__inner{height:190px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:28px}
.pb-brand{display:inline-flex;align-items:center;width:230px}
.pb-brand img{display:block;width:230px;height:auto;object-fit:contain}
.pb-nav{display:flex;align-items:center;gap:32px}
.pb-nav a{font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#c7c9c4;transition:color .25s ease}
.pb-header__actions{justify-self:end;display:flex;align-items:center;gap:10px}
.pb-menu-toggle{display:none;min-height:44px;padding:0 15px;border:1px solid #74776f;border-radius:999px;background:transparent;color:#fff;font:700 9px/1 var(--pb-body-font);letter-spacing:.12em;text-transform:uppercase}

.pb-hero{position:relative;min-height:680px;overflow:hidden}
.pb-image-slot{position:relative;overflow:hidden;background:
  radial-gradient(circle at 68% 34%,rgba(105,105,105,.28),transparent 27%),
  linear-gradient(135deg,#151515,#080808 58%,#1a1a1a);
}
.pb-image-slot:before{content:"";position:absolute;inset:0;background:
  linear-gradient(115deg,transparent 0 31%,rgba(255,255,255,.025) 31.3% 31.8%,transparent 32.1% 100%),
  linear-gradient(25deg,transparent 0 62%,rgba(255,255,255,.02) 62.2% 62.7%,transparent 63% 100%);
}
.pb-image-slot>span{position:absolute;z-index:2;left:clamp(24px,5vw,62px);bottom:28px;padding:8px 11px;border:1px solid rgba(255,255,255,.16);background:rgba(0,0,0,.42);color:#aeb1ab;font-size:9px;letter-spacing:.15em;text-transform:uppercase}
.pb-image-slot--hero{position:absolute;inset:0;transform:scale(1.035);will-change:transform}
.pb-hero__overlay{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 38%,rgba(0,0,0,.28) 67%,rgba(0,0,0,.62) 100%),
  linear-gradient(0deg,rgba(0,0,0,.66),transparent 48%)}
.pb-hero__inner{position:relative;z-index:3;min-height:680px;display:grid;grid-template-columns:minmax(0,700px) minmax(180px,1fr);gap:72px;align-items:end;padding-top:96px;padding-bottom:62px}
.pb-hero__copy{min-width:0}
.pb-hero h1{font-size:clamp(58px,6.7vw,82px);line-height:.9;max-width:690px;margin-top:19px;overflow-wrap:break-word}
.pb-hero__copy>.pb-body-copy{max-width:500px;margin-top:27px}
.pb-hero__note{max-width:250px;padding-bottom:5px;font-size:12px;line-height:1.7;color:#bdc0ba}

.pb-heading-grid{display:grid;grid-template-columns:180px minmax(0,760px);gap:60px;align-items:start}
.pb-heading-grid h2{font-size:clamp(42px,5vw,60px);line-height:.98;max-width:760px;overflow-wrap:break-word}
.pb-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:66px;border-top:1px solid var(--pb-line)}
.pb-feature-grid article{min-width:0;padding:28px 30px 0 0;border-right:1px solid var(--pb-line)}
.pb-feature-grid article+article{padding-left:30px}
.pb-feature-grid article:last-child{border-right:0}
.pb-index{display:block;font-size:10px;color:#969992;margin-bottom:44px}
.pb-feature-grid h3{font-family:var(--pb-body-font);font-size:15px;letter-spacing:0;text-transform:none;margin-bottom:10px}
.pb-feature-grid p{font-size:12px;line-height:1.75;color:#bdc0ba;max-width:270px}

.pb-section-heading{display:grid;grid-template-columns:minmax(0,700px) minmax(220px,320px);gap:56px;align-items:end;margin-bottom:46px}
.pb-section-heading h2{font-size:clamp(44px,5vw,62px);line-height:.97;margin-top:15px;max-width:700px;overflow-wrap:break-word}
.pb-section-heading>p{font-size:12px;line-height:1.75;color:#c1c4be;max-width:320px;justify-self:end}
.pb-service-list{border-top:1px solid var(--pb-line)}
.pb-service{display:grid;grid-template-columns:56px minmax(0,1fr) 260px;align-items:center;gap:20px;padding:25px 0;border-bottom:1px solid var(--pb-line);min-width:0}
.pb-service>span{font-size:10px;color:#969994}
.pb-service strong{font-size:clamp(24px,2.65vw,32px);line-height:1.05;min-width:0;overflow-wrap:break-word}
.pb-service small{font-size:12px;line-height:1.5;color:#bec1bb;text-align:right}

.pb-split{display:grid;grid-template-columns:56% 44%;min-height:500px}
.pb-image-slot--environment{min-height:500px}
.pb-split__copy{min-width:0;padding:72px clamp(32px,5vw,62px);border-left:1px solid var(--pb-line-soft)}
.pb-split__copy h2{font-size:clamp(40px,4.4vw,52px);line-height:.97;max-width:420px;margin-top:17px;overflow-wrap:break-word}
.pb-split__copy>.pb-body-copy{max-width:420px;margin-top:26px}
.pb-benefit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 26px;margin-top:38px}
.pb-benefit-grid strong{display:block;font-size:12px;margin-bottom:6px}
.pb-benefit-grid span{display:block;font-size:11px;line-height:1.6;color:#aeb1ab}

.pb-heading-wide{font-size:clamp(42px,5vw,60px);line-height:.98;max-width:780px;margin-top:16px;overflow-wrap:break-word}
.pb-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:52px}
.pb-process-grid article{min-width:0;min-height:230px;padding:24px;border:1px solid var(--pb-line);display:flex;flex-direction:column;justify-content:space-between;transition:border-color .3s ease,transform .3s ease}
.pb-step{display:flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid #646760;border-radius:50%;font-size:11px}
.pb-process-grid h3{font-family:var(--pb-body-font);font-size:15px;line-height:1.35;letter-spacing:0;text-transform:none;margin-bottom:9px}
.pb-process-grid p{font-size:11px;line-height:1.65;color:#adb0aa}

.pb-trainer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:48px}
.pb-trainer-card{position:relative;min-width:0;min-height:450px;overflow:hidden;background:#131313}
.pb-image-slot--trainer{position:absolute;inset:0;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.pb-image-slot--trainer>span{bottom:auto;top:22px}
.pb-trainer-card__copy{position:absolute;z-index:3;left:0;right:0;bottom:0;padding:110px 27px 27px;background:linear-gradient(transparent,rgba(0,0,0,.96))}
.pb-trainer-card__copy>span{font-size:9px;color:#aeb1ab;text-transform:uppercase;letter-spacing:.15em}
.pb-trainer-card__copy h3{font-size:31px;line-height:1.05;margin-top:8px;max-width:100%;overflow-wrap:break-word}
.pb-trainer-card__copy p{font-size:11px;line-height:1.65;color:#c2c4bf;max-width:420px;margin-top:10px}

.pb-media-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.pb-image-slot--media{height:270px;transition:transform .6s cubic-bezier(.22,.61,.36,1)}
.pb-image-slot--media>span{bottom:17px;left:17px}

.pb-contact{padding:92px 0 96px}
.pb-contact__grid{display:grid;grid-template-columns:minmax(0,570px) minmax(360px,1fr);gap:96px;align-items:start}
.pb-contact__copy{min-width:0}
.pb-contact__copy h2{font-size:clamp(46px,5.4vw,66px);line-height:.94;max-width:570px;margin-top:18px;overflow-wrap:break-word}
.pb-contact__copy>.pb-body-copy{max-width:460px;margin-top:28px}
.pb-contact__copy>.pb-button{margin-top:28px}
.pb-form{width:100%;min-width:0;border-top:1px solid #3b3d39}
.pb-form label{display:grid;grid-template-columns:86px minmax(0,1fr);gap:18px;align-items:start;padding:17px 0;border-bottom:1px solid #363834;min-width:0}
.pb-form label span{font-size:9px;font-weight:600;color:#bec1bb;text-transform:uppercase;letter-spacing:.15em;padding-top:12px}
.pb-form input,.pb-form textarea{display:block;width:100%;min-width:0;min-height:44px;padding:8px 0;background:transparent;border:0;outline:0;color:#f4f4f1;font:400 16px/1.45 var(--pb-body-font)}
.pb-form textarea{min-height:95px;resize:vertical}
.pb-form input::placeholder,.pb-form textarea::placeholder{color:#767972;opacity:1}
.pb-form button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;margin-top:24px;padding:0 23px;border:1px solid var(--pb-white);border-radius:999px;background:var(--pb-white);color:#080808;font:700 10px/1.25 var(--pb-body-font);text-transform:uppercase;letter-spacing:.11em;white-space:normal;text-align:center}
.pb-form input:disabled,.pb-form textarea:disabled,.pb-form button:disabled{opacity:.55;cursor:not-allowed}
.pb-form__note{font-size:10px;line-height:1.55;color:#92958f;max-width:340px;margin-top:15px}

.pb-footer{padding:28px 0;border-top:1px solid var(--pb-line-soft)}
.pb-footer .pb-shell{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;font-size:9px;color:#9da09a;text-transform:uppercase;letter-spacing:.13em}
.pb-footer__brand{display:inline-flex;width:76px}
.pb-footer__brand img{display:block;width:76px;height:auto;max-height:62px;object-fit:contain}
.pb-footer .pb-shell>span{text-align:center}
.pb-footer .pb-shell>a:last-child{justify-self:end}

.pb-reveal{opacity:1;transform:none}
.pb-motion-ready .pb-reveal{opacity:0;transform:translateY(18px);transition:opacity .72s ease,transform .85s cubic-bezier(.22,.61,.36,1)}
.pb-motion-ready .pb-reveal.is-visible{opacity:1;transform:translateY(0)}

@media (hover:hover) and (pointer:fine){
  .pb-nav a:hover{color:#fff}
  .pb-button:hover{transform:translateY(-2px)}
  .pb-production a.pb-button--outline:hover,
  .pb-production a.pb-button--outline:focus-visible{
    background:#f4f4f1;
    border-color:#f4f4f1;
    color:#080808!important;
  }
  .pb-production a.pb-button--light:hover,
  .pb-production a.pb-button--light:focus-visible{
    background:#dcded9;
    border-color:#dcded9;
    color:#080808!important;
  }
  .pb-process-grid article:hover{transform:translateY(-3px);border-color:#555851}
  .pb-trainer-card:hover .pb-image-slot--trainer{transform:scale(1.025)}
  .pb-image-slot--media:hover{transform:translateY(-4px)}
}

@media (max-width:900px){
  .pb-header__inner{grid-template-columns:1fr auto}
  .pb-menu-toggle{display:inline-flex;align-items:center;justify-content:center}
  .pb-nav{
    position:absolute;
    top:100%;
    left:0;
    right:0;
    display:grid;
    gap:0;
    padding:0 clamp(24px,5vw,62px);
    max-height:0;
    overflow:hidden;
    background:#080808;
    border-bottom:0 solid var(--pb-line-soft);
    opacity:0;
    visibility:hidden;
    transition:max-height .35s ease,opacity .25s ease,visibility .25s ease,border-width .25s ease,padding .35s ease;
  }
  .pb-nav a{padding:17px 0;border-top:1px solid var(--pb-line-soft)}
  .pb-header.is-menu-open .pb-nav{max-height:260px;padding-top:8px;padding-bottom:12px;border-bottom-width:1px;opacity:1;visibility:visible}
  .pb-hero__inner{grid-template-columns:1fr;gap:0}
  .pb-hero__note{display:none}
  .pb-heading-grid,.pb-section-heading,.pb-contact__grid{grid-template-columns:1fr;gap:28px}
  .pb-section-heading>p{justify-self:start}
  .pb-split{grid-template-columns:1fr}
  .pb-image-slot--environment{min-height:390px}
  .pb-split__copy{border-left:0;border-top:1px solid var(--pb-line-soft)}
  .pb-contact__grid{gap:52px}
}

@media (max-width:680px){
  .pb-shell{padding-inline:24px}
  .pb-header__inner{height:124px}
  .pb-brand,.pb-brand img{width:142px}
  .pb-header__cta{display:none}
  .pb-hero{min-height:600px}
  .pb-hero__inner{min-height:600px;padding-top:72px;padding-bottom:40px}
  .pb-hero h1{font-size:clamp(46px,13vw,56px);max-width:340px}
  .pb-hero__copy>.pb-body-copy{font-size:13px;max-width:320px}
  .pb-actions{flex-direction:column;align-items:flex-start}
  .pb-feature-grid,.pb-process-grid,.pb-trainer-grid,.pb-media-grid{grid-template-columns:1fr}
  .pb-feature-grid{margin-top:38px}
  .pb-feature-grid article,.pb-feature-grid article+article{padding:22px 0;border-right:0;border-bottom:1px solid var(--pb-line)}
  .pb-feature-grid article>span{margin-bottom:16px}
  .pb-service{grid-template-columns:34px minmax(0,1fr);gap:12px}
  .pb-service small{display:none}
  .pb-image-slot--environment{min-height:340px}
  .pb-split__copy{padding:54px 24px}
  .pb-benefit-grid{grid-template-columns:1fr 1fr;gap:24px 18px}
  .pb-process-grid{margin-top:34px}
  .pb-process-grid article{min-height:200px}
  .pb-trainer-grid{margin-top:34px}
  .pb-trainer-card{min-height:400px}
  .pb-image-slot--media{height:230px}
  .pb-contact{padding:60px 0 66px}
  .pb-form label{grid-template-columns:1fr;gap:3px;padding:14px 0}
  .pb-form label span{padding-top:0}
  .pb-footer .pb-shell{grid-template-columns:1fr;justify-items:start}
  .pb-footer .pb-shell>span{text-align:left}
  .pb-footer .pb-shell>a:last-child{justify-self:start}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .pb-production *, .pb-production *::before, .pb-production *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .pb-motion-ready .pb-reveal{opacity:1;transform:none}
}


.pb-production a.pb-button--outline:focus-visible{
  outline:2px solid #f4f4f1;
  outline-offset:3px;
}
.pb-production a.pb-button--light:focus-visible{
  outline:2px solid #f4f4f1;
  outline-offset:3px;
}


/* =========================================================
   Pacific Beast v0.4.0 — consolidated responsive visual QA
   ========================================================= */

.pb-production{font-synthesis:none}

/* Header */
.pb-header__inner{height:142px}
.pb-brand{width:170px}
.pb-brand img{width:170px;height:auto}
.pb-nav{gap:36px}
.pb-nav a{font-size:11px;letter-spacing:.14em}
.pb-header__cta{min-height:46px;padding-inline:24px;font-size:10.5px}

/* Hero */
.pb-hero{min-height:590px}
.pb-hero__inner{
  min-height:590px;
  align-items:center;
  padding-top:46px;
  padding-bottom:46px;
}
.pb-hero h1{
  font-size:clamp(56px,6.1vw,76px);
  line-height:.91;
  max-width:650px;
  margin-top:18px;
}
.pb-hero__copy>.pb-body-copy{
  max-width:525px;
  margin-top:22px;
  color:#d6d8d3;
}
.pb-actions{margin-top:26px}
.pb-hero__note{
  align-self:end;
  padding-bottom:12px;
  color:#c8cbc5;
}

/* Vertical rhythm */
.pb-section{padding-block:clamp(68px,6.4vw,86px)}
.pb-heading-grid{gap:48px}
.pb-feature-grid{margin-top:54px}
.pb-section-heading{margin-bottom:38px}
.pb-heading-wide{margin-top:14px}
.pb-process-grid{margin-top:44px}
.pb-trainer-grid{margin-top:40px}

/* Secondary contrast */
.pb-feature-grid p,
.pb-section-heading>p,
.pb-service small,
.pb-benefit-grid span,
.pb-process-grid p,
.pb-trainer-card__copy p,
.pb-form__note{
  color:#bfc2bc;
}
.pb-index,
.pb-service>span{
  color:#9fa29c;
}

/* Contact */
.pb-contact{padding:82px 0 88px}
.pb-contact__grid{gap:82px}
.pb-form label{padding:18px 0}
.pb-form label span{color:#c6c9c3}
.pb-form input::placeholder,
.pb-form textarea::placeholder{
  color:#a6a9a3;
  opacity:1;
}
.pb-form input:disabled,
.pb-form textarea:disabled{
  opacity:1;
  color:#d4d6d1;
  -webkit-text-fill-color:#d4d6d1;
  cursor:default;
}
.pb-form button:disabled{
  opacity:1;
  background:#f4f4f1;
  border-color:#f4f4f1;
  color:#080808;
  cursor:default;
}
.pb-form__note{color:#9fa29c}

/* Footer */
.pb-footer{padding:34px 0}
.pb-footer__brand{width:104px}
.pb-footer__brand img{width:104px;max-height:none}
.pb-footer .pb-shell{color:#a7aaa4}

/* Motion */
.pb-motion-ready .pb-reveal{
  transform:translateY(14px);
  transition:opacity .7s ease,transform .9s cubic-bezier(.22,.61,.36,1);
}
.pb-image-slot--hero{transition:transform .2s linear}

/* Large tablet */
@media (max-width:1100px){
  .pb-header__inner{height:124px}
  .pb-brand,.pb-brand img{width:148px}
  .pb-nav{gap:25px}
  .pb-hero{min-height:570px}
  .pb-hero__inner{
    min-height:570px;
    padding-top:42px;
    padding-bottom:42px;
  }
  .pb-hero h1{font-size:clamp(54px,7vw,70px)}
}

/* Tablet */
@media (max-width:900px){
  .pb-header__inner{height:108px}
  .pb-brand,.pb-brand img{width:126px}
  .pb-menu-toggle{min-height:42px}
  .pb-hero{min-height:560px}
  .pb-hero__inner{
    min-height:560px;
    padding-top:54px;
    padding-bottom:44px;
  }
  .pb-contact__grid{gap:44px}
}

/* Mobile */
@media (max-width:680px){
  .pb-header__inner{height:96px}
  .pb-brand,.pb-brand img{width:110px}
  .pb-hero{min-height:560px}
  .pb-hero__inner{
    min-height:560px;
    padding-top:54px;
    padding-bottom:34px;
  }
  .pb-hero h1{
    font-size:clamp(43px,12.5vw,52px);
    line-height:.94;
    max-width:330px;
  }
  .pb-hero__copy>.pb-body-copy{
    margin-top:20px;
    line-height:1.68;
  }
  .pb-actions{
    gap:10px;
    margin-top:22px;
  }
  .pb-button{min-height:43px}
  .pb-section{padding-block:54px}
  .pb-heading-grid h2,
  .pb-section-heading h2,
  .pb-heading-wide,
  .pb-split__copy h2,
  .pb-contact__copy h2{
    line-height:1;
  }
  .pb-contact{padding:56px 0 62px}
  .pb-footer{padding:28px 0}
  .pb-footer__brand,.pb-footer__brand img{width:92px}
}


/* =========================================================
   Pacific Beast v0.4.1 — final mobile/navigation QA
   ========================================================= */
.pb-contact__copy>.pb-button{display:none}
.pb-footer__social{justify-self:end;color:#b7bab4;transition:color .25s ease}
@media (hover:hover) and (pointer:fine){.pb-footer__social:hover{color:#fff}}
@media (max-width:900px){
  .pb-header{position:relative}
  .pb-nav{top:100%;left:0;right:0;z-index:100;padding-left:24px;padding-right:24px;background:rgba(8,8,8,.985);box-shadow:0 18px 40px rgba(0,0,0,.42);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
  .pb-nav a{min-height:66px;display:flex;align-items:center;font-size:11px;letter-spacing:.14em;color:#d2d4cf}
  .pb-header.is-menu-open .pb-nav{max-height:300px;padding-top:0;padding-bottom:0}
  .pb-menu-toggle{min-width:66px;transition:background-color .25s ease,color .25s ease,border-color .25s ease}
  .pb-header.is-menu-open .pb-menu-toggle{background:#f4f4f1;color:#080808;border-color:#f4f4f1}
}
@media (max-width:680px){
  .pb-contact__copy h2{font-size:clamp(35px,10.5vw,42px);line-height:1.02;max-width:310px}
  .pb-contact__copy>.pb-body-copy{margin-top:22px;max-width:300px}
  .pb-contact__grid{gap:38px}
  .pb-form label{padding:15px 0}
  .pb-form button{width:auto;min-width:192px}
  .pb-footer .pb-shell{gap:13px}
  .pb-footer__brand,.pb-footer__brand img{width:104px}
  .pb-footer__social{justify-self:start}
}


/* Pacific Beast v0.5.0 — functional consultation form */
.pb-honeypot{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
}
.pb-form-status{
  grid-column:1/-1;
  margin-bottom:18px;
  padding:14px 16px;
  border:1px solid var(--pb-line);
  font-size:12px;
  line-height:1.55;
}
.pb-form-status--success{
  border-color:#6f786d;
  color:#e1e5de;
  background:#101510;
}
.pb-form-status--error{
  border-color:#765e5e;
  color:#e0caca;
  background:#160f0f;
}
.pb-form input:not(:disabled),
.pb-form textarea:not(:disabled){
  opacity:1;
  -webkit-text-fill-color:#f4f4f1;
}
.pb-form button:not(:disabled){
  cursor:pointer;
  transition:transform .25s ease,background-color .25s ease,border-color .25s ease;
}
@media (hover:hover) and (pointer:fine){
  .pb-form button:not(:disabled):hover{
    transform:translateY(-2px);
    background:#dcded9;
    border-color:#dcded9;
  }
}


/* Pacific Beast v0.5.1 — browser autofill/focus normalization */
.pb-form input,
.pb-form textarea{
  background-color:transparent!important;
  caret-color:#f4f4f1;
}

.pb-form input:focus,
.pb-form textarea:focus{
  background-color:transparent!important;
  outline:none;
  box-shadow:inset 0 -1px 0 #f4f4f1;
}

.pb-form input:-webkit-autofill,
.pb-form input:-webkit-autofill:hover,
.pb-form input:-webkit-autofill:focus,
.pb-form textarea:-webkit-autofill,
.pb-form textarea:-webkit-autofill:hover,
.pb-form textarea:-webkit-autofill:focus{
  -webkit-text-fill-color:#f4f4f1!important;
  caret-color:#f4f4f1!important;
  -webkit-box-shadow:0 0 0 1000px #080808 inset!important;
  box-shadow:0 0 0 1000px #080808 inset!important;
  background-color:#080808!important;
  border-radius:0!important;
  transition:background-color 9999s ease-out 0s;
}

.pb-form input:autofill,
.pb-form textarea:autofill{
  color:#f4f4f1!important;
  background:#080808!important;
  box-shadow:0 0 0 1000px #080808 inset!important;
}

.pb-form input::selection,
.pb-form textarea::selection{
  background:#f4f4f1;
  color:#080808;
}


/* =========================================================
   Pacific Beast v0.6.0 — production hero photography
   ========================================================= */

.pb-production{position:relative}

/* Let the official brand/navigation sit directly over the hero image. */
.pb-header{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:60;
  border-bottom:0;
  background:linear-gradient(180deg,rgba(0,0,0,.68) 0%,rgba(0,0,0,.24) 62%,transparent 100%);
}
.pb-header__inner{height:124px}
.pb-brand,.pb-brand img{width:188px}
.pb-nav a{color:#e2e4df}
.pb-header__cta{
  border-color:rgba(255,255,255,.72);
  background:rgba(0,0,0,.14);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}

/* Real responsive hero media. */
.pb-hero{
  min-height:clamp(720px,78vh,870px);
  background:#080808;
}
.pb-hero__media{
  position:absolute;
  inset:0;
  display:block;
  overflow:hidden;
  background:#080808;
}
.pb-hero__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.035);
  will-change:transform;
  transition:transform .2s linear;
}
.pb-hero__overlay{
  background:
    linear-gradient(90deg,rgba(0,0,0,.92) 0%,rgba(0,0,0,.74) 32%,rgba(0,0,0,.28) 57%,rgba(0,0,0,.10) 74%,rgba(0,0,0,.36) 100%),
    linear-gradient(0deg,rgba(0,0,0,.78) 0%,rgba(0,0,0,.10) 50%,rgba(0,0,0,.34) 100%);
}
.pb-hero__inner{
  min-height:clamp(720px,78vh,870px);
  grid-template-columns:minmax(0,680px) minmax(220px,1fr);
  align-items:end;
  padding-top:190px;
  padding-bottom:72px;
}
.pb-hero__copy{
  padding:28px 0 2px;
}
.pb-hero .pb-kicker{
  color:#daddd7;
  text-shadow:0 1px 18px rgba(0,0,0,.42);
}
.pb-hero h1{
  font-size:clamp(64px,7vw,92px);
  line-height:.89;
  max-width:700px;
  margin-top:20px;
  text-shadow:0 2px 26px rgba(0,0,0,.34);
}
.pb-hero__copy>.pb-body-copy{
  max-width:540px;
  font-size:15px;
  line-height:1.7;
  color:#eceee9;
  text-shadow:0 1px 14px rgba(0,0,0,.5);
}
.pb-hero__note{
  justify-self:end;
  align-self:end;
  max-width:290px;
  padding:0 0 8px 34px;
  border-left:1px solid rgba(255,255,255,.55);
  color:#e0e2dd;
  font-size:11px;
  letter-spacing:.02em;
  text-shadow:0 1px 12px rgba(0,0,0,.7);
}

@media (max-width:1100px){
  .pb-header__inner{height:112px}
  .pb-brand,.pb-brand img{width:164px}
  .pb-hero,
  .pb-hero__inner{min-height:700px}
  .pb-hero__inner{padding-top:160px;padding-bottom:58px}
  .pb-hero h1{font-size:clamp(60px,7.5vw,80px)}
}

@media (max-width:900px){
  .pb-header{
    position:absolute;
    background:linear-gradient(180deg,rgba(0,0,0,.78),rgba(0,0,0,.22) 70%,transparent);
  }
  .pb-header__inner{height:102px}
  .pb-brand,.pb-brand img{width:138px}
  .pb-nav{
    background:rgba(8,8,8,.98);
    box-shadow:0 18px 40px rgba(0,0,0,.42);
  }
  .pb-hero,
  .pb-hero__inner{min-height:760px}
  .pb-hero__inner{
    grid-template-columns:1fr;
    align-items:end;
    padding-top:260px;
    padding-bottom:50px;
  }
  .pb-hero__copy{max-width:600px}
  .pb-hero__note{display:none}
}

@media (max-width:680px){
  .pb-header__inner{height:92px}
  .pb-brand,.pb-brand img{width:126px}
  .pb-menu-toggle{
    min-width:76px;
    min-height:44px;
    border-color:rgba(255,255,255,.72);
    background:rgba(0,0,0,.18);
    backdrop-filter:blur(4px);
    -webkit-backdrop-filter:blur(4px);
  }

  .pb-hero{
    min-height:940px;
  }
  .pb-hero__media img{
    object-position:center top;
  }
  .pb-hero__overlay{
    background:
      linear-gradient(180deg,rgba(0,0,0,.30) 0%,rgba(0,0,0,.05) 38%,rgba(0,0,0,.30) 57%,rgba(0,0,0,.96) 84%,#080808 100%),
      linear-gradient(90deg,rgba(0,0,0,.18),transparent 46%,rgba(0,0,0,.08));
  }
  .pb-hero__inner{
    min-height:940px;
    align-items:end;
    padding-top:500px;
    padding-bottom:38px;
  }
  .pb-hero__copy{
    width:100%;
    padding:0;
  }
  .pb-hero h1{
    max-width:100%;
    font-size:clamp(47px,13.6vw,62px);
    line-height:.91;
    margin-top:17px;
  }
  .pb-hero__copy>.pb-body-copy{
    max-width:100%;
    margin-top:20px;
    font-size:14px;
    line-height:1.65;
  }
  .pb-actions{
    align-items:stretch;
    width:100%;
    margin-top:26px;
  }
  .pb-actions .pb-button{
    width:100%;
    min-height:52px;
  }
}

@media (max-width:420px){
  .pb-shell{padding-inline:20px}
  .pb-hero{min-height:900px}
  .pb-hero__inner{
    min-height:900px;
    padding-top:470px;
    padding-bottom:30px;
  }
  .pb-hero h1{font-size:clamp(44px,13vw,54px)}
}


/* =========================================================
   Pacific Beast v0.6.1 — desktop hero composition refinement
   ========================================================= */

@media (min-width:1101px){
  /* Pull the photo back slightly without modifying the source image.
     The dark left field intentionally blends into the existing overlay
     and gives the headline more visual breathing room. */
  .pb-hero__media img{
    width:94%;
    margin-left:auto;
    transform:scale(1);
    object-position:center center;
  }

  .pb-hero__inner{
    padding-bottom:108px;
  }

  .pb-hero__copy{
    padding-bottom:8px;
  }

  .pb-hero__note{
    padding-bottom:22px;
    margin-right:18px;
    max-width:320px;
  }
}

@media (min-width:1400px){
  .pb-hero__media img{
    width:92%;
  }

  .pb-hero__inner{
    padding-bottom:116px;
  }

  .pb-hero__note{
    margin-right:28px;
    padding-bottom:26px;
  }
}


/* =========================================================
   Pacific Beast v0.6.2 — hero spacing + full-width correction
   ========================================================= */

@media (min-width:1101px){
  /* Restore true full-width image coverage while keeping the subject a touch less cramped. */
  .pb-hero__media img{
    width:100%;
    margin-left:0;
    transform:translate3d(0,0,0) scale(1.015);
    object-position:56% center;
  }

  /* Lower the whole header slightly so the logo has more breathing room from the top. */
  .pb-header__inner{
    height:138px;
    padding-top:16px;
  }

  .pb-brand,
  .pb-brand img{
    width:188px;
  }

  /* Keep desktop navigation vertically aligned after the added top breathing room. */
  .pb-header__cta{
    align-self:center;
  }

  /* Maintain the extra lower breathing room requested. */
  .pb-hero__inner{
    padding-top:206px;
    padding-bottom:112px;
  }

  .pb-hero__copy{
    padding-bottom:10px;
  }

  .pb-hero__note{
    padding-bottom:24px;
    margin-right:18px;
    max-width:320px;
  }
}

@media (min-width:1400px){
  .pb-hero__media img{
    width:100%;
    transform:translate3d(0,0,0) scale(1.01);
    object-position:55% center;
  }

  .pb-header__inner{
    height:144px;
    padding-top:18px;
  }

  .pb-hero__inner{
    padding-top:212px;
    padding-bottom:118px;
  }

  .pb-hero__note{
    margin-right:28px;
    padding-bottom:28px;
  }
}


/* =========================================================
   Pacific Beast v0.7.0 — private training environment image
   ========================================================= */

.pb-environment__media{
  position:relative;
  display:block;
  min-height:500px;
  overflow:hidden;
  background:#090909;
}
.pb-environment__media::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(0,0,0,.06) 0%,rgba(0,0,0,0) 62%,rgba(0,0,0,.14) 100%),
    linear-gradient(0deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,0) 44%);
}
.pb-environment__media img{
  display:block;
  width:100%;
  height:100%;
  min-height:500px;
  object-fit:cover;
  object-position:center center;
  transform:scale(1.018);
  will-change:transform;
  transition:transform .2s linear;
}

@media (max-width:900px){
  .pb-environment__media,
  .pb-environment__media img{
    min-height:390px;
  }
}

@media (max-width:680px){
  .pb-environment__media,
  .pb-environment__media img{
    min-height:340px;
  }

  .pb-environment__media img{
    object-position:center center;
  }

  .pb-environment__media::after{
    background:linear-gradient(0deg,rgba(0,0,0,.20),rgba(0,0,0,0) 48%);
  }
}

@media (prefers-reduced-motion:reduce){
  .pb-environment__media img{
    transform:none!important;
    transition:none!important;
  }
}


/* =========================================================
   Pacific Beast v0.7.1 — subtle section-depth refinement
   ========================================================= */

:root{
  --pb-surface-0:#080808;
  --pb-surface-1:#0a0a0a;
  --pb-surface-2:#0d0d0d;
  --pb-surface-3:#101010;
}

.pb-intro{
  background:
    radial-gradient(1200px 500px at 65% 8%, rgba(255,255,255,.035) 0%, rgba(255,255,255,0) 58%),
    linear-gradient(180deg, var(--pb-surface-0) 0%, #090909 100%);
}

.pb-services{
  background:
    linear-gradient(180deg, rgba(255,255,255,.015) 0%, rgba(255,255,255,0) 14%),
    linear-gradient(180deg, var(--pb-surface-1) 0%, #090909 100%);
}

.pb-services .pb-service-list,
.pb-intro .pb-feature-grid,
.pb-process .pb-process-grid{
  position:relative;
}

.pb-services .pb-service-list::before,
.pb-intro .pb-feature-grid::before,
.pb-process .pb-process-grid::before{
  content:"";
  position:absolute;
  inset:-14px -16px;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.028);
  background:linear-gradient(180deg, rgba(255,255,255,.012), rgba(255,255,255,0));
  opacity:.9;
}

.pb-process{
  background:
    radial-gradient(900px 380px at 20% 20%, rgba(255,255,255,.03) 0%, rgba(255,255,255,0) 55%),
    linear-gradient(180deg, #090909 0%, var(--pb-surface-2) 100%);
}

.pb-intro .pb-feature,
.pb-process .pb-process-card{
  background:linear-gradient(180deg, rgba(255,255,255,.018) 0%, rgba(255,255,255,.008) 100%);
}

.pb-services .pb-service-row{
  background:linear-gradient(90deg, rgba(255,255,255,.012) 0%, rgba(255,255,255,0) 52%);
  transition:background-color .25s ease, transform .25s ease;
}

.pb-services .pb-service-row:hover{
  background:linear-gradient(90deg, rgba(255,255,255,.022) 0%, rgba(255,255,255,.006) 60%);
}

.pb-intro .pb-feature:hover,
.pb-process .pb-process-card:hover{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.14);
}

.pb-intro .pb-section-intro,
.pb-services .pb-section-intro,
.pb-process .pb-section-intro{
  position:relative;
}

.pb-intro .pb-section-intro::after,
.pb-services .pb-section-intro::after,
.pb-process .pb-section-intro::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-20px;
  width:88px;
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,.22), rgba(255,255,255,0));
}

@media (max-width: 900px){
  .pb-services .pb-service-list::before,
  .pb-intro .pb-feature-grid::before,
  .pb-process .pb-process-grid::before{
    inset:-10px -10px;
  }
}

@media (max-width: 680px){
  .pb-intro{
    background:
      linear-gradient(180deg, #080808 0%, #0a0a0a 100%);
  }

  .pb-services{
    background:
      linear-gradient(180deg, #0a0a0a 0%, #090909 100%);
  }

  .pb-process{
    background:
      linear-gradient(180deg, #090909 0%, #101010 100%);
  }

  .pb-services .pb-service-list::before,
  .pb-intro .pb-feature-grid::before,
  .pb-process .pb-process-grid::before{
    inset:-6px -6px;
    border-color: rgba(255,255,255,.024);
  }

  .pb-intro .pb-section-intro::after,
  .pb-services .pb-section-intro::after,
  .pb-process .pb-section-intro::after{
    bottom:-16px;
    width:64px;
  }
}

@media (prefers-reduced-motion: reduce){
  .pb-intro .pb-feature:hover,
  .pb-process .pb-process-card:hover,
  .pb-services .pb-service-row:hover{
    transform:none;
  }
}


/* =========================================================
   Pacific Beast v0.7.2 — corrected visible section depth
   ========================================================= */

.pb-depth-about,
.pb-depth-training,
.pb-depth-process{
  position:relative;
  isolation:isolate;
}

/* ABOUT — near-black with a subtle soft light field. */
.pb-depth-about{
  background:
    radial-gradient(900px 420px at 74% 18%,
      rgba(255,255,255,.050) 0%,
      rgba(255,255,255,.018) 32%,
      rgba(255,255,255,0) 68%),
    linear-gradient(180deg,#090909 0%,#0c0c0c 100%);
}

/* TRAINING SERVICES — clearly distinct charcoal surface. */
.pb-depth-training{
  background:
    linear-gradient(115deg,
      rgba(255,255,255,.030) 0%,
      rgba(255,255,255,.010) 32%,
      rgba(255,255,255,0) 66%),
    linear-gradient(180deg,#111111 0%,#0d0d0d 100%);
}

/* HOW IT WORKS — dark mid-surface so the process cards sit in a layer. */
.pb-depth-process{
  background:
    radial-gradient(760px 340px at 18% 22%,
      rgba(255,255,255,.038) 0%,
      rgba(255,255,255,0) 68%),
    linear-gradient(180deg,#0d0d0d 0%,#101010 100%);
}

/* Soft full-width section seams instead of obvious boxed bands. */
.pb-depth-about::before,
.pb-depth-training::before,
.pb-depth-process::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  border-top:1px solid rgba(255,255,255,.035);
  border-bottom:1px solid rgba(255,255,255,.025);
}

/* Keep content above the surface treatment. */
.pb-depth-about > .pb-shell,
.pb-depth-training > .pb-shell,
.pb-depth-process > .pb-shell{
  position:relative;
  z-index:1;
}

/* Give the content groups a little more dimensional separation. */
.pb-depth-about .pb-feature-grid{
  background:rgba(255,255,255,.008);
}

.pb-depth-training .pb-service-row{
  background:
    linear-gradient(90deg,
      rgba(255,255,255,.018) 0%,
      rgba(255,255,255,.006) 40%,
      rgba(255,255,255,0) 78%);
}

.pb-depth-process .pb-process-grid article{
  background:
    linear-gradient(180deg,
      rgba(255,255,255,.026) 0%,
      rgba(255,255,255,.010) 100%);
}

/* Small restrained highlight line beneath each text-section heading. */
.pb-depth-about .pb-heading-grid::after,
.pb-depth-training .pb-section-heading::after,
.pb-depth-process .pb-heading-wide::after{
  content:"";
  display:block;
  width:86px;
  height:1px;
  margin-top:24px;
  background:linear-gradient(90deg,
    rgba(255,255,255,.28),
    rgba(255,255,255,0));
}

@media (max-width:680px){
  .pb-depth-about{
    background:linear-gradient(180deg,#090909 0%,#0c0c0c 100%);
  }

  .pb-depth-training{
    background:linear-gradient(180deg,#111111 0%,#0d0d0d 100%);
  }

  .pb-depth-process{
    background:linear-gradient(180deg,#0d0d0d 0%,#101010 100%);
  }

  .pb-depth-about .pb-heading-grid::after,
  .pb-depth-training .pb-section-heading::after,
  .pb-depth-process .pb-heading-wide::after{
    width:62px;
    margin-top:18px;
  }
}


/* =========================================================
   Pacific Beast v0.8.0 — verified trainer profiles
   ========================================================= */

.pb-trainer-grid{
  align-items:start;
  gap:20px;
}

.pb-trainer-card--profile{
  min-height:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.07);
  background:#0d0d0d;
  transition:transform .35s ease,border-color .35s ease;
}

.pb-trainer-card__image{
  position:relative;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#111;
}

.pb-trainer-card__image::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(0deg,rgba(0,0,0,.22),rgba(0,0,0,0) 34%);
}

.pb-trainer-card__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  transition:transform .7s cubic-bezier(.22,.61,.36,1);
}

.pb-trainer-card--profile .pb-trainer-card__copy{
  position:relative;
  inset:auto;
  padding:28px 28px 30px;
  background:
    radial-gradient(520px 180px at 10% 0%,rgba(255,255,255,.025),transparent 70%),
    #0d0d0d;
}

.pb-trainer-card--profile .pb-trainer-card__copy>span{
  display:block;
  color:#b8bbb5;
}

.pb-trainer-card--profile .pb-trainer-card__copy h3{
  margin-top:9px;
  font-size:clamp(30px,3.2vw,42px);
  line-height:.98;
}

.pb-trainer-card--profile .pb-trainer-card__copy p{
  max-width:590px;
  margin-top:16px;
  color:#c5c8c2;
  font-size:12px;
  line-height:1.72;
}

.pb-credentials{
  list-style:none;
  margin:22px 0 0;
  padding:0;
  border-top:1px solid rgba(255,255,255,.10);
}

.pb-credentials li{
  position:relative;
  padding:11px 0 11px 16px;
  border-bottom:1px solid rgba(255,255,255,.07);
  color:#d7d9d4;
  font-size:10px;
  line-height:1.5;
  letter-spacing:.02em;
}

.pb-credentials li::before{
  content:"";
  position:absolute;
  left:0;
  top:17px;
  width:5px;
  height:5px;
  border:1px solid rgba(255,255,255,.52);
  border-radius:50%;
}

@media (hover:hover) and (pointer:fine){
  .pb-trainer-card--profile:hover{
    transform:translateY(-3px);
    border-color:rgba(255,255,255,.14);
  }
  .pb-trainer-card--profile:hover .pb-trainer-card__image img{
    transform:scale(1.018);
  }
}

@media (max-width:900px){
  .pb-trainer-grid{grid-template-columns:1fr;gap:22px}
  .pb-trainer-card--profile{
    display:grid;
    grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);
  }
  .pb-trainer-card__image{aspect-ratio:4/5}
  .pb-trainer-card--profile .pb-trainer-card__copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:28px;
  }
}

@media (max-width:680px){
  .pb-trainer-card--profile{display:block}
  .pb-trainer-card--profile .pb-trainer-card__copy{padding:24px 22px 26px}
  .pb-trainer-card--profile .pb-trainer-card__copy h3{font-size:34px}
  .pb-trainer-card--profile .pb-trainer-card__copy p{font-size:11px}
}

@media (prefers-reduced-motion:reduce){
  .pb-trainer-card--profile,
  .pb-trainer-card__image img{transition:none!important}
  .pb-trainer-card--profile:hover,
  .pb-trainer-card--profile:hover .pb-trainer-card__image img{transform:none!important}
}


/* =========================================================
   Pacific Beast v0.9.0 — editable content + Instagram media
   ========================================================= */

.pb-instagram-grid{
  align-items:start;
}
.pb-instagram-card{
  min-width:0;
  min-height:520px;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  overflow:hidden;
  background:#101010;
  border:1px solid rgba(255,255,255,.07);
}
.pb-instagram-card__placeholder{
  min-height:520px;
  width:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:30px;
  text-align:center;
  background:
    radial-gradient(circle at 50% 30%,rgba(255,255,255,.045),transparent 42%),
    #101010;
}
.pb-instagram-card__placeholder span{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#d8dad5;
}
.pb-instagram-card__placeholder small{
  font-size:10px;
  color:#7e817b;
}
.pb-instagram-card .instagram-media{
  width:100%!important;
  max-width:540px!important;
  min-width:0!important;
  margin:0 auto!important;
  border-radius:0!important;
}
.pb-instagram-card iframe{
  max-width:100%!important;
}

@media (max-width:1100px){
  .pb-instagram-grid{
    grid-template-columns:1fr;
    max-width:620px;
    margin-inline:auto;
  }
  .pb-instagram-card,
  .pb-instagram-card__placeholder{
    min-height:460px;
  }
}

@media (max-width:680px){
  .pb-instagram-card,
  .pb-instagram-card__placeholder{
    min-height:420px;
  }
}


/* =========================================================
   Pacific Beast v0.9.1 — custom Instagram video thumbnails
   ========================================================= */

.pb-social-video-grid{
  align-items:stretch;
}

.pb-social-video-card{
  position:relative;
  display:block;
  min-width:0;
  aspect-ratio:4/5;
  overflow:hidden;
  background:#0d0d0d;
  border:1px solid rgba(255,255,255,.08);
  color:#fff;
  text-decoration:none;
  isolation:isolate;
}

.pb-social-video-card img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:scale(1.002);
  transition:transform .55s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}

.pb-social-video-card__shade{
  position:absolute;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg,rgba(0,0,0,.05) 0%,rgba(0,0,0,.02) 48%,rgba(0,0,0,.72) 100%),
    linear-gradient(90deg,rgba(0,0,0,.12),transparent 40%);
}

.pb-social-video-card__play{
  position:absolute;
  left:50%;
  top:50%;
  z-index:2;
  width:68px;
  height:68px;
  transform:translate(-50%,-50%);
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.34));
  transition:transform .28s ease;
}

.pb-social-video-card__play svg{
  display:block;
  width:100%;
  height:100%;
}

.pb-social-video-card__play circle{
  fill:rgba(8,8,8,.56);
  stroke:rgba(255,255,255,.88);
  stroke-width:1.5;
}

.pb-social-video-card__play path{
  fill:#fff;
}

.pb-social-video-card__meta{
  position:absolute;
  left:24px;
  right:24px;
  bottom:22px;
  z-index:2;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
}

.pb-social-video-card__meta small{
  font-size:10px;
  letter-spacing:.18em;
  color:rgba(255,255,255,.62);
}

.pb-social-video-card__meta strong{
  font-size:10px;
  font-weight:600;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:#fff;
}

@media (hover:hover) and (pointer:fine){
  .pb-social-video-card:hover img{
    transform:scale(1.035);
    filter:contrast(1.03) brightness(.94);
  }

  .pb-social-video-card:hover .pb-social-video-card__play{
    transform:translate(-50%,-50%) scale(1.07);
  }
}

@media (max-width:1100px){
  .pb-social-video-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .pb-social-video-card__meta{
    left:18px;
    right:18px;
    bottom:18px;
  }
}

@media (max-width:760px){
  .pb-social-video-grid{
    grid-template-columns:1fr;
    max-width:520px;
    margin-inline:auto;
    gap:18px;
  }
  .pb-social-video-card__play{
    width:62px;
    height:62px;
  }
}

@media (prefers-reduced-motion:reduce){
  .pb-social-video-card img,
  .pb-social-video-card__play{
    transition:none!important;
    transform:none!important;
  }
  .pb-social-video-card__play{
    transform:translate(-50%,-50%)!important;
  }
}


/* =========================================================
   Pacific Beast v0.11.0 — performance + accessibility pass
   ========================================================= */

.pb-skip-link{
  position:fixed;
  z-index:10000;
  top:12px;
  left:12px;
  transform:translateY(-160%);
  padding:12px 16px;
  background:#f4f4f1;
  color:#080808!important;
  border-radius:4px;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  transition:transform .18s ease;
}
.pb-skip-link:focus{
  transform:translateY(0);
  outline:3px solid #fff;
  outline-offset:3px;
}

#pb-main:focus{outline:none}

.pb-production a:focus-visible,
.pb-production button:focus-visible,
.pb-production input:focus-visible,
.pb-production textarea:focus-visible{
  outline:2px solid #f4f4f1;
  outline-offset:4px;
}

.pb-form input:focus-visible,
.pb-form textarea:focus-visible{
  outline:0;
  box-shadow:inset 0 -2px 0 #f4f4f1;
}

.pb-menu-toggle:focus-visible,
.pb-social-video-card:focus-visible,
.pb-footer__social:focus-visible,
.pb-brand:focus-visible,
.pb-footer__brand:focus-visible{
  outline:2px solid #f4f4f1;
  outline-offset:4px;
}

.pb-footer__social,
.pb-footer__brand{
  min-height:44px;
  align-items:center;
}

.pb-trainer-card__image picture,
.pb-social-video-card picture{
  display:block;
  width:100%;
  height:100%;
}

/* Avoid reserving compositor memory on devices where parallax is disabled. */
.pb-hero__media img,
.pb-environment__media img{
  will-change:auto;
}
.pb-production.pb-motion-enhanced .pb-hero__media img,
.pb-production.pb-motion-enhanced .pb-environment__media img{
  will-change:transform;
}

/* Preserve content dimensions before lazy images decode. */
.pb-trainer-card__image,
.pb-social-video-card{
  contain:layout paint;
}

@media (max-width:900px){
  .pb-nav[aria-hidden="true"]{pointer-events:none}
}

@media (prefers-reduced-motion:reduce){
  .pb-skip-link{transition:none}
}


/* =========================================================
   Pacific Beast v0.13.0 — pre-launch audit fixes
   ========================================================= */

.pb-footer__links{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}

.pb-footer__privacy{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  color:#a7aaa4;
  font-size:10px;
  text-decoration:none;
  text-transform:uppercase;
  letter-spacing:.12em;
  transition:color .2s ease;
}

.pb-footer__privacy:hover{
  color:#f4f4f1;
}

.pb-footer__privacy:focus-visible{
  outline:2px solid #f4f4f1;
  outline-offset:4px;
}

@media (max-width:680px){
  .pb-footer__links{
    justify-content:flex-start;
    gap:14px;
  }
}


/* =========================================================
   Pacific Beast v0.13.1 — branded Privacy Policy
   ========================================================= */

.pb-legal{
  min-height:100vh;
  background:
    radial-gradient(900px 420px at 78% 8%,rgba(255,255,255,.035),transparent 62%),
    #080808;
}

.pb-legal .pb-header{
  position:relative;
  inset:auto;
  background:#080808;
  border-bottom:1px solid var(--pb-line-soft);
}

.pb-legal .pb-header__inner{
  height:150px;
  padding-top:0;
}

.pb-legal__header-spacer{
  min-width:120px;
}

.pb-legal__main{
  padding:clamp(72px,8vw,118px) 0 clamp(84px,9vw,132px);
}

.pb-legal__intro{
  display:grid;
  grid-template-columns:180px minmax(0,760px);
  gap:60px;
  align-items:start;
  padding-bottom:54px;
  border-bottom:1px solid var(--pb-line);
}

.pb-legal__intro h1{
  margin:0;
  font-family:var(--pb-display);
  font-size:clamp(54px,6vw,82px);
  font-weight:400;
  line-height:.92;
  letter-spacing:.01em;
  text-transform:uppercase;
  color:var(--pb-white);
}

.pb-legal__content{
  max-width:800px;
  margin:56px auto 0;
  color:#d0d2cd;
  font:400 15px/1.82 var(--pb-body-font);
}

.pb-legal__content > *:first-child{
  margin-top:0;
}

.pb-legal__content h1{
  display:none;
}

.pb-legal__content h2,
.pb-legal__content h3{
  margin:48px 0 16px;
  font-family:var(--pb-body-font);
  font-weight:600;
  line-height:1.25;
  letter-spacing:0;
  text-transform:none;
  color:var(--pb-white);
}

.pb-legal__content h2{
  font-size:24px;
}

.pb-legal__content h3{
  font-size:18px;
}

.pb-legal__content p{
  margin:0 0 20px;
}

.pb-legal__content ul,
.pb-legal__content ol{
  margin:12px 0 24px;
  padding-left:24px;
}

.pb-legal__content li{
  margin:7px 0;
}

.pb-legal__content a{
  color:#f4f4f1;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}

.pb-legal__content strong{
  color:#f4f4f1;
}

.pb-legal__footer{
  border-top:1px solid var(--pb-line-soft);
}

@media (max-width:900px){
  .pb-legal .pb-header__inner{
    height:118px;
  }

  .pb-legal__intro{
    grid-template-columns:1fr;
    gap:20px;
  }
}

@media (max-width:680px){
  .pb-legal .pb-header__inner{
    height:auto;
    min-height:104px;
    grid-template-columns:1fr auto;
    padding-block:16px;
  }

  .pb-legal .pb-brand,
  .pb-legal .pb-brand img{
    width:126px;
  }

  .pb-legal__header-spacer{
    display:none;
  }

  .pb-legal .pb-header__actions{
    justify-self:end;
  }

  .pb-legal .pb-button{
    min-height:44px;
    padding-inline:15px;
    font-size:9px;
  }

  .pb-legal__main{
    padding:58px 0 82px;
  }

  .pb-legal__intro{
    padding-bottom:36px;
  }

  .pb-legal__intro h1{
    font-size:clamp(46px,13vw,60px);
  }

  .pb-legal__content{
    margin-top:40px;
    font-size:14px;
    line-height:1.75;
  }

  .pb-legal__content h2{
    margin-top:38px;
    font-size:21px;
  }
}
