/* =========================================================
   ENHANCE LAYER — richer,on-brand motion for 無限秘書 LP
   Loaded after style.css. Only adds; never rewrites base design.
   ========================================================= */

/* ===== AIには任せられない：人の秘書 ===== */
.human{background:var(--ink);color:#f6f4ef}.human .section-lead{color:rgba(246,244,239,.72)}.human-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.human-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:28px 26px;transition:transform .35s,background .35s,box-shadow .35s}.human-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.06);box-shadow:0 24px 50px -26px rgba(184,148,90,.35)}.hm-ico{width:50px;height:50px;border-radius:50%;background:var(--gold-light);display:grid;place-items:center;color:#1a1a1e;font-weight:900;font-size:20px;margin-bottom:16px}.human-card h3.aio-h4{font-size:16.5px;font-weight:900;margin-bottom:10px;line-height:1.5}.human-card p{font-size:13.5px;color:rgba(246,244,239,.7);line-height:1.85}.human-card .no{display:block;margin-top:8px;color:#e0654d;font-weight:700}.human-card .no::before{content:"✕ ";font-weight:900}.human-note{margin-top:32px;padding:26px 30px;background:rgba(184,148,90,0.10);border-left:3px solid var(--gold);border-radius:8px;font-size:15.5px;line-height:1.85}.human-note b{color:var(--gold-light);font-size:17px}
@media (max-width:900px){.human-grid{grid-template-columns:1fr}}/* ===== 業種別 活用イメージ ===== */
.industries{background:var(--paper)}.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}.ind-card{background:#fff;border:1px solid var(--line-paper);border-radius:12px;padding:26px 20px;text-align:center;transition:transform .35s,box-shadow .35s}.ind-card:hover{transform:translateY(-5px);box-shadow:0 24px 50px -26px rgba(184,148,90,.45)}.ind-ico{width:54px;height:54px;border-radius:50%;margin:0 auto 16px;background:var(--gold-light);display:grid;place-items:center;color:#1a1a1e;font-weight:900;font-size:22px}.ind-card h3.aio-h4{font-size:16px;font-weight:900;margin-bottom:10px}.ind-tasks{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:14px;min-height:3.4em}.ind-result{font-size:12.5px;color:var(--gold-dark);font-weight:700;line-height:1.6;padding-top:12px;border-top:1px solid var(--line-paper)}
@media (max-width:900px){.ind-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.ind-grid{grid-template-columns:1fr}.ind-tasks{min-height:0}}/* 固定ナビ分、アンカー着地位置をずらす */
section[id]{scroll-margin-top:78px}
@media (max-width:820px){section[id]{scroll-margin-top:66px}}
/* デスクトップnavが増えたぶん詰める */
@media (min-width:821px) and (max-width:1080px){.nav-links{gap:18px;font-size:12px}}/* ===== スマホ固定CTAバー ===== */
.mcta{display:none}
@media (max-width:720px){.mcta{display:block;position:fixed;left:0;right:0;bottom:0;z-index:60;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(10,10,11,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.1)}.mcta-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:15px;border-radius:12px;background:#06C755;color:#fff;font-weight:700;font-size:15px;box-shadow:0 10px 24px -8px rgba(6,199,85,.5)}.mcta-ico{width:22px;height:22px;border-radius:50%;background:#fff;color:#06C755;display:grid;place-items:center;font-weight:900;font-size:12px}.float-cta{display:none!important}body{padding-bottom:78px}
}/* ===== ヒーロー タイピング演出 ===== */
.hero-type{font-size:clamp(13.5px,1.05vw,15.5px);color:rgba(246,244,239,.65);margin:-22px 0 16px;letter-spacing:.02em;min-height:1.6em;opacity:0;animation:fadeUp .8s 1s ease-out forwards}.hero-ainote{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 8px;margin:0 0 32px;padding:11px 16px;border-radius:10px;background:rgba(224,101,77,.1);border:1px solid rgba(224,101,77,.3);font-size:clamp(12.5px,1vw,14.5px);line-height:1.65;color:rgba(246,244,239,.9);opacity:0;animation:fadeUp .8s 1.15s ease-out forwards}.hero-ainote .an-x{color:#e0654d;font-weight:900}.hero-ainote b{color:var(--gold-light);font-weight:700}.type-word{color:var(--gold-light);font-weight:700}.type-caret{display:inline-block;width:2px;color:var(--gold-light);animation:caretBlink 1s step-end infinite;margin-left:1px}
@keyframes caretBlink{50%{opacity:0}}/* ===== チャット実演 ===== */
.chatdemo{background:var(--paper-2)}.chat-wrap{max-width:520px;margin:44px auto 0}.chat-window{background:var(--ink);border-radius:20px;padding:26px 20px;box-shadow:0 40px 80px -30px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.08);min-height:380px;display:flex;flex-direction:column;gap:12px;justify-content:flex-end}.chat-msg{max-width:82%;padding:11px 15px;border-radius:14px;font-size:13.5px;line-height:1.6;opacity:0;transform:translateY(12px);transition:opacity .4s ease,transform .4s ease}.chat-msg.show{opacity:1;transform:none}.chat-msg .chat-role{font-size:9.5px;letter-spacing:.12em;opacity:.55;margin-bottom:4px;text-transform:uppercase}.chat-msg.boss{align-self:flex-end;background:#2a2a2f;color:#f6f4ef;border-bottom-right-radius:4px}.chat-msg.sec{align-self:flex-start;background:var(--gold-light);color:#1a1a1e;border-bottom-left-radius:4px;font-weight:500}.chat-typing{align-self:flex-start;display:inline-flex;gap:5px;padding:14px 16px;background:rgba(255,255,255,.08);border-radius:14px;opacity:0;transition:opacity .3s}.chat-typing.show{opacity:1}.chat-typing i{width:6px;height:6px;border-radius:50%;background:rgba(246,244,239,.6)}
@media (prefers-reduced-motion: no-preference){.chat-typing.show i{animation:chatType 1.2s infinite}.chat-typing.show i:nth-child(2){animation-delay:.2s}.chat-typing.show i:nth-child(3){animation-delay:.4s}
  @keyframes chatType{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}
}/* ===== できること／できないこと ===== */
.cando{background:var(--paper)}.cando-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px}.cando-col{border-radius:14px;padding:34px 30px;border:1px solid var(--line-paper)}.cando-col.can{background:#fff}.cando-col.cant{background:#f4efe4}.cando-col h3{font-size:19px;font-weight:900;margin-bottom:6px;display:flex;align-items:center;gap:10px}.cando-col h3 .mk{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:14px;color:#fff;flex-shrink:0}.cando-col.can h3 .mk{background:#3ddc84}.cando-col.cant h3 .mk{background:var(--gold-dark)}.cando-col .csub{font-size:12.5px;color:var(--muted);margin-bottom:22px}.cando-list{list-style:none;display:flex;flex-direction:column;gap:13px}.cando-list li{font-size:14px;line-height:1.65;padding-left:26px;position:relative}.cando-col.can .cando-list li::before{content:"✓";position:absolute;left:0;color:#2fb968;font-weight:700}.cando-col.cant .cando-list li::before{content:"→";position:absolute;left:0;color:var(--gold-dark);font-weight:700}.cando-list li b{color:var(--gold-dark)}
@media (max-width:820px){.cando-grid{grid-template-columns:1fr}}/* ===== 社長の1日 Before/After ===== */
.dayflow{background:var(--paper)}.day-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:44px}.day-col{border-radius:14px;padding:34px 30px;border:1px solid var(--line-paper)}.day-col.before{background:#efe9dd}.day-col.after{background:var(--ink);color:#f6f4ef;border-color:rgba(255,255,255,.1)}.day-head{display:flex;align-items:center;gap:12px;margin-bottom:22px}.day-tag{font-family:"Cormorant Garamond",serif;font-style:italic;font-size:13px;letter-spacing:.15em;padding:5px 12px;border-radius:999px;background:rgba(200,69,43,.12);color:var(--accent)}.day-tag.gold{background:rgba(184,148,90,.2);color:var(--gold-light)}.day-head h3{font-size:19px;font-weight:900}.day-list{list-style:none;display:flex;flex-direction:column;gap:0}.day-list li{display:flex;gap:16px;padding:13px 0;border-bottom:1px dashed rgba(0,0,0,.12);font-size:14px;align-items:baseline}.day-col.after .day-list li{border-color:rgba(255,255,255,.12)}.day-list .t{font-family:"JetBrains Mono",monospace;font-size:12px;color:var(--gold-dark);flex-shrink:0;width:44px}.day-col.after .day-list .t{color:var(--gold-light)}.day-list .d{opacity:.9}.day-foot{margin-top:20px;padding-top:18px;border-top:1px solid rgba(0,0,0,.12);font-size:14px;display:flex;align-items:center;justify-content:space-between}.day-col.after .day-foot{border-color:rgba(255,255,255,.14)}.day-foot b{font-family:"Cormorant Garamond",serif;font-size:30px;color:var(--gold-dark)}.day-col.after .day-foot b{color:var(--gold-light)}
@media(max-width:820px){.day-grid{grid-template-columns:1fr}}/* ===== 料金シミュレーター ===== */
.sim{background:var(--ink);color:#f6f4ef}.sim .section-lead{color:rgba(246,244,239,.72)}.sim-card{margin-top:40px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:44px}.sim-control label{display:block;font-size:15px;margin-bottom:20px;color:rgba(246,244,239,.85)}.sim-control label b{font-family:"Cormorant Garamond",serif;font-size:34px;color:var(--gold-light);margin:0 4px}.sim-range{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:var(--gold-dark);outline:none;cursor:pointer}.sim-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--gold);cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.4)}.sim-range::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--gold);cursor:pointer}.sim-scale{display:flex;justify-content:space-between;font-size:11px;color:rgba(246,244,239,.5);margin-top:10px}.sim-results{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:36px 0 24px}.sim-box{text-align:center;padding:24px 16px;border-radius:12px;background:rgba(255,255,255,.04)}.sim-box .lbl{font-size:11.5px;letter-spacing:.1em;color:rgba(246,244,239,.6);margin-bottom:12px}.sim-box .num{font-family:"Cormorant Garamond",serif;font-weight:700;font-size:clamp(26px,3.4vw,40px);line-height:1;display:flex;align-items:baseline;justify-content:center;gap:3px}.sim-box .num .u{font-size:.4em;font-family:"Noto Sans JP",sans-serif;font-weight:500;opacity:.75}.sim-box.cost .num{color:var(--gold-light)}.sim-box.loss .num{color:var(--accent)}.sim-box.gain .num{color:#fff}.sim-net{text-align:center;font-size:16px;padding:18px;background:rgba(184,148,90,.12);border-radius:10px;margin-bottom:24px}.sim-net b{font-family:"Cormorant Garamond",serif;font-size:26px;color:var(--gold-light)}.sim-cta{display:inline-flex;justify-content:center;width:100%}
@media(max-width:720px){.sim-card{padding:28px 20px}.sim-results{grid-template-columns:1fr;gap:12px}}/* ===== 安心・保証 ===== */
.assure{background:var(--paper-2)}.assure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.assure-card{background:#fff;border:1px solid var(--line-paper);border-radius:12px;padding:30px 26px;transition:transform .35s,box-shadow .35s}.assure-card:hover{transform:translateY(-4px);box-shadow:0 24px 50px -26px rgba(184,148,90,.45)}.ac-ico{width:52px;height:52px;border-radius:50%;background:var(--gold-light);display:grid;place-items:center;color:#1a1a1e;font-size:22px;font-weight:700;font-family:"Cormorant Garamond",serif;margin-bottom:18px}.assure-card h3.aio-h4{font-size:17px;font-weight:900;margin-bottom:10px}.assure-card p{font-size:13.5px;color:var(--muted);line-height:1.8}
@media(max-width:900px){.assure-grid{grid-template-columns:1fr}}/* ===== 30秒セルフ診断 ===== */
.diag{background:var(--ink);color:#f6f4ef}.diag .section-lead{color:rgba(246,244,239,.72)}.diag-card{margin-top:40px;max-width:720px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:44px;position:relative;overflow:hidden}.diag-prog{display:flex;gap:8px;margin-bottom:28px}.diag-prog i{height:4px;flex:1;border-radius:999px;background:rgba(255,255,255,.14)}.diag-prog i.done{background:var(--gold)}.diag-step{display:none}.diag-step.on{display:block;animation:fadeUp .5s ease-out}.diag-q{font-size:20px;font-weight:900;margin-bottom:22px;line-height:1.5}.diag-q .qn{font-family:"Cormorant Garamond",serif;font-style:italic;color:var(--gold-light);margin-right:10px}.diag-opts{display:grid;gap:12px}.diag-opt{text-align:left;padding:18px 22px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);color:#f6f4ef;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;display:flex;justify-content:space-between;align-items:center}.diag-opt:hover{background:rgba(184,148,90,.18);border-color:var(--gold)}.diag-opt .ar{color:var(--gold-light);opacity:0;transition:opacity .2s}.diag-opt:hover .ar{opacity:1}.diag-result{text-align:center}.diag-result .rlbl{font-size:13px;letter-spacing:.15em;color:var(--gold-light);margin-bottom:14px}.diag-result .rbig{font-size:clamp(24px,3.4vw,34px);font-weight:900;line-height:1.5;margin-bottom:10px}.diag-result .rbig b{color:var(--gold-light);font-family:"Cormorant Garamond",serif}.diag-result .rsub{color:rgba(246,244,239,.7);font-size:14.5px;margin-bottom:28px;line-height:1.8}.diag-result .btn-primary{display:inline-flex}.diag-retry{display:block;margin:18px auto 0;background:none;color:rgba(246,244,239,.5);font-size:12px;text-decoration:underline;cursor:pointer}
@media(max-width:720px){.diag-card{padding:28px 20px}}/* ===== ヒーロー右：女性オンライン秘書ビジュアル ===== */
.hero-visual{display:none}.hv-frame{position:relative;border-radius:18px;overflow:hidden;border:1px solid rgba(216,185,130,.35);box-shadow:0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1px rgba(255,255,255,.05)}.hv-frame img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}.hv-frame::after{content:"";position:absolute;inset:0;background:rgba(5,5,6,0.20);pointer-events:none}.hv-badge{position:absolute;left:16px;bottom:16px;z-index:2;display:flex;align-items:center;gap:8px;padding:9px 15px;border-radius:999px;background:rgba(10,10,11,.78);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#f6f4ef;font-size:12.5px;font-weight:500;letter-spacing:.03em;white-space:nowrap}.hv-dot{width:8px;height:8px;border-radius:50%;background:#3ddc84;box-shadow:0 0 8px #3ddc84;flex-shrink:0}.hv-chip{position:absolute;z-index:3;display:flex;align-items:center;gap:8px;padding:11px 15px;border-radius:12px;background:rgba(255,255,255,.97);color:#1a1a1e;font-size:12.5px;font-weight:700;box-shadow:0 18px 40px -14px rgba(0,0,0,.5);white-space:nowrap}.hv-chip span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#3ddc84;color:#fff;font-size:11px;flex-shrink:0}.hv-chip-1{top:-16px;right:-12px}.hv-chip-2{bottom:40px;right:-22px}
@media (min-width:1081px){.hero-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);column-gap:48px;align-items:center}.hero-copy{grid-column:1;min-width:0}.hero-visual{display:block;grid-column:2;position:relative;justify-self:center;width:100%;max-width:440px;opacity:0;animation:fadeUp .9s 1.3s ease-out forwards}.hero-stats{grid-column:1 / -1}.hero h1{font-size:clamp(38px,4vw,62px)}
}
@media (prefers-reduced-motion: no-preference) and (min-width:1081px){.hv-frame{animation:hvFloat 6.5s ease-in-out infinite}.hv-dot{animation:pulse 2s ease-in-out infinite}.hv-chip-1{animation:chipFloat 4.6s ease-in-out infinite}.hv-chip-2{animation:chipFloat 5.6s ease-in-out infinite .6s}
  @keyframes hvFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
  @keyframes chipFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
}/* ===== 動く背景（各セクションのゆらめくオーロラ） ===== */
section.block > .container{position:relative;z-index:1}.living-bg{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.living-bg b{position:absolute;display:block;border-radius:50%;display:none;will-change:transform,opacity;opacity:0;transition:opacity 1.1s ease}.living-bg.on b{opacity:1}.living-bg--dark b:nth-child(1){width:62vmax;height:62vmax;top:-26%;left:-12%;background:none}.living-bg--dark b:nth-child(2){width:54vmax;height:54vmax;bottom:-28%;right:-14%;background:none}.living-bg--light b:nth-child(1){width:58vmax;height:58vmax;top:-24%;left:-14%;background:none}.living-bg--light b:nth-child(2){width:50vmax;height:50vmax;bottom:-26%;right:-12%;background:none}
@media (prefers-reduced-motion: no-preference){/* 一定速度でずっと循環（linear・0%==100%でシームレス・止まらない） */
  .living-bg b:nth-child(1){animation:bgFlow1 17s linear infinite;animation-play-state:paused}.living-bg b:nth-child(2){animation:bgFlow2 23s linear infinite;animation-play-state:paused}.living-bg.on b{animation-play-state:running}
  @keyframes bgFlow1{0%{transform:translate(-10%,-6%) scale(1.08)}25%{transform:translate(12%,-9%) scale(1.2)}50%{transform:translate(14%,11%) scale(1.08)}75%{transform:translate(-9%,9%) scale(1.18)}100%{transform:translate(-10%,-6%) scale(1.08)}
  }
  @keyframes bgFlow2{0%{transform:translate(9%,7%) scale(1.12)}25%{transform:translate(-12%,9%) scale(1.02)}50%{transform:translate(-14%,-9%) scale(1.14)}75%{transform:translate(9%,-7%) scale(1.04)}100%{transform:translate(9%,7%) scale(1.12)}
  }
}/* ===== ALWAYS-ON MOTION（常時動くUI） ===== */

/* (1) 無限に流れる業務ティッカー */
.ticker-wrap{background:var(--ink)}.ticker{
  background:var(--ink);overflow:hidden;position:relative;
  padding:16px 0;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.06);
}.ticker::before,.ticker::after{
  content:"";position:absolute;top:0;bottom:0;width:14vw;max-width:180px;z-index:2;pointer-events:none;
}.ticker::before{left:0;background:var(--ink)}.ticker::after{right:0;background:var(--ink)}.ticker-track{display:inline-flex;align-items:center;white-space:nowrap;will-change:transform}.ticker-item{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(17px,2.2vw,28px);
  color:rgba(246,244,239,.72);letter-spacing:.05em;padding:0 24px;
}.ticker-dot{color:var(--gold);font-size:9px;opacity:.9}/* (2) 浮遊する金の粒子 */
.particles{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}.particles span{
  position:absolute;bottom:-12px;border-radius:50%;
  background:none;
  box-shadow:0 0 6px rgba(216,185,130,.5);
}/* hero/mission/cta の本文は粒子より前面に */
.hero-inner,.cta-inner,.mission .container{position:relative;z-index:2}

@media (prefers-reduced-motion: no-preference){.ticker-track{animation:tickerScroll 42s linear infinite}.ticker--rev .ticker-track{animation-direction:reverse}
  @keyframes tickerScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.particles span{animation:floatUp linear infinite}
  @keyframes floatUp{0%{transform:translateY(0) translateX(0) scale(1);opacity:0}12%{opacity:1}88%{opacity:1}100%{transform:translateY(-150vh) translateX(24px) scale(.6);opacity:0}
  }/* (3) ブランドマークMの回転する金の光輪 */
  .brand-mark{position:relative;isolation:isolate}.brand-mark::after{
    content:"";position:absolute;inset:-3px;border-radius:50%;z-index:-1;
    background:rgba(54,46,32,0.21);
    animation:haloSpin 5.5s linear infinite;
    filter:blur(1px);
  }
  @keyframes haloSpin{to{transform:rotate(360deg)}}
}/* ===== MISSION (社会的意義：ママ・女性の可能性を無限開拓) ===== */
.mission{background:var(--ink);color:#f6f4ef;position:relative;overflow:hidden}.mission::before{content:"";position:absolute;top:-120px;left:-120px;width:440px;height:440px;border-radius:50%;background:none;opacity:.16;pointer-events:none}.mission::after{content:"";position:absolute;bottom:-140px;right:-100px;width:360px;height:360px;border-radius:50%;background:none;opacity:.1;pointer-events:none}.mission .container{position:relative;z-index:1}.mission .section-lead{color:rgba(246,244,239,.72)}.mission .section-lead strong{color:var(--gold-light);font-weight:700}.mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px}.mission-card{padding:34px 30px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:10px;transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .38s ease}.mission-card:hover{transform:translateY(-4px);border-color:rgba(184,148,90,.4);box-shadow:0 26px 54px -26px rgba(184,148,90,.42)}.mission-card .mc-icon{width:54px;height:54px;border-radius:50%;background:rgba(184,148,90,.14);display:grid;place-items:center;margin-bottom:18px;font-size:24px}.mission-card .mc-tag{font-family:"Cormorant Garamond",serif;font-style:italic;letter-spacing:.15em;color:var(--gold-light);font-size:14px;margin-bottom:6px}.mission-card h3.aio-h4{font-size:19px;font-weight:900;margin-bottom:12px;line-height:1.4}.mission-card p{font-size:14px;line-height:1.85;color:rgba(246,244,239,.7)}.mission-statement{margin-top:36px;padding:34px 40px;border-radius:12px;background:rgba(184,148,90,0.10);border-left:3px solid var(--gold);text-align:center}.mission-statement .mission-eyebrow{font-family:"Cormorant Garamond",serif;font-style:italic;letter-spacing:.25em;color:var(--gold-light);font-size:13px;margin-bottom:14px}.mission-statement p{font-size:clamp(16px,1.55vw,20px);line-height:1.85;color:rgba(246,244,239,.9)}.mission-statement strong{color:var(--gold-light);font-weight:700}
@media (max-width:900px){.mission-grid{grid-template-columns:1fr;gap:16px}.mission-statement{padding:28px 22px}}/* ---- Scroll progress bar (top gold line) ---- */
.scroll-progress{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:100;
  background:var(--gold-dark);
  box-shadow:0 0 14px rgba(216,185,130,.6);
  transition:width .12s linear;
  pointer-events:none;
}/* ---- Directional / dramatic scroll reveals (JS toggles .fx-in) ---- */
.fx{opacity:0;transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1),filter .9s ease;will-change:opacity,transform}.fx-up{transform:translateY(44px)}.fx-left{transform:translateX(-52px)}.fx-right{transform:translateX(52px)}.fx-scale{transform:scale(.9)}.fx-blur{filter:blur(12px)}.fx.fx-in{opacity:1;transform:none;filter:none}
/* Safety fallback: if observer never fires, force-show after 2.6s */
@keyframes fxFallback{to{opacity:1;transform:none;filter:none}}.fx{animation:fxFallback .6s ease-out 2.6s forwards}.fx.fx-in{animation:none}/* Stagger children (delay set inline by JS via --d) */
.stagger > *{opacity:0;transform:translateY(30px);transition:opacity .7s cubic-bezier(.2,.8,.2,1),transform .7s cubic-bezier(.2,.8,.2,1)}.stagger.fx-in > *{opacity:1;transform:none}.stagger > *{animation:fxFallback .6s ease-out 2.7s forwards}.stagger.fx-in > *{animation:none}/* Slightly richer base reveal (subtle scale) */
.reveal{transform:translateY(34px) scale(.99)}.reveal.in{transform:translateY(0) scale(1)}/* ---- Gold shimmer sweep on key words ---- */
.shimmer{
  background:var(--gold-light);
  background-size:220% auto;
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;color:transparent;
}/* ---- Button shine sweep on hover ---- */
.btn,.form-submit,.cta-btn,.nav-cta{position:relative;overflow:hidden}.btn::after,.form-submit::after,.cta-btn::after,.nav-cta::after{
  content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;
  background:rgba(85,85,85,0.13);
  transform:skewX(-20deg);pointer-events:none;
}/* ---- Card hover: gold glow + smoother lift ---- */
.feature,.task-cat,.voice,.problem-card,.cta-card{
  transition:transform .38s cubic-bezier(.2,.8,.2,1),box-shadow .38s ease,border-color .38s ease,background .38s ease;
}.feature:hover,.task-cat:hover,.voice:hover{box-shadow:0 26px 54px -26px rgba(184,148,90,.5)}.problem-card:hover,.cta-card:hover{box-shadow:0 26px 54px -26px rgba(184,148,90,.38)}.task-tag{transition:transform .2s,background .2s,color .2s,border-color .2s}.task-tag:hover{transform:translateY(-2px) scale(1.04)}/* Case card image zoom on hover */
.case-img img,.service-hero-img img,.company-portrait img{transition:transform .9s cubic-bezier(.2,.8,.2,1)}.case-card:hover .case-img img,.service-hero:hover .service-hero-img img,.company-portrait:hover img{transform:scale(1.06)}

/* ---- prefers-reduced-motion: no-preference only (ambient looping motion) ---- */
@media (prefers-reduced-motion: no-preference){/* Hero ambient aurora drift */
  .hero-aurora{
    position:absolute;inset:-25%;z-index:1;pointer-events:none;opacity:.55;
    background:
      none;
    filter:blur(26px);
    animation:auroraDrift 20s ease-in-out infinite alternate;
  }
  @keyframes auroraDrift{0%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(3%,-2.5%,0) scale(1.1)}100%{transform:translate3d(-3%,2.5%,0) scale(1.05)}
  }/* Shimmer keeps moving */
  .shimmer{animation:shimmerMove 5s linear infinite}
  @keyframes shimmerMove{to{background-position:220% center}}/* Button shine plays on hover */
  .btn:hover::after,.form-submit:hover::after,.cta-btn:hover::after,.nav-cta:hover::after{
    animation:shine .85s ease;
  }
  @keyframes shine{from{left:-130%}to{left:150%}}/* Floating LINE CTA pulse ring */
  .float-cta.show::before{
    content:"";position:absolute;inset:0;border-radius:999px;
    box-shadow:0 0 0 0 rgba(6,199,85,.5);
    animation:ctaRing 2.4s ease-out infinite;pointer-events:none;
  }
  @keyframes ctaRing{0%{box-shadow:0 0 0 0 rgba(6,199,85,.5)}70%,100%{box-shadow:0 0 0 18px rgba(6,199,85,0)}}/* Flow step nodes softly glow */
  .flow-day{animation:nodeGlow 3.5s ease-in-out infinite}.flow-step:nth-child(2) .flow-day{animation-delay:.5s}.flow-step:nth-child(3) .flow-day{animation-delay:1s}.flow-step:nth-child(4) .flow-day{animation-delay:1.5s}
  @keyframes nodeGlow{0%,100%{box-shadow:0 0 0 8px var(--ink),0 0 0 9px rgba(184,148,90,.15)}50%{box-shadow:0 0 0 8px var(--ink),0 0 22px 9px rgba(184,148,90,.35)}}/* Scroll hint gentle fade-pulse in addition to bob */
  .scroll-hint{animation:bob 2s ease-in-out infinite,hintFade 3s ease-in-out infinite}
  @keyframes hintFade{0%,100%{opacity:.35}50%{opacity:.75}}/* Section labels: animated leading line */
  .section-label::before{transition:width .8s cubic-bezier(.2,.8,.2,1)}.fx-in .section-label::before,.reveal.in .section-label::before{width:32px}
}

/* Respect reduced motion: freeze looping + heavy transitions */
@media (prefers-reduced-motion: reduce){.hero-aurora{display:none}.fx,.stagger > *{transition:opacity .01s !important;transform:none !important;filter:none !important}
}
