
:root{
  --tim-bg:#141917;
  --tim-bg-alt:#1c2521;
  --tim-panel:#212b27;
  --tim-panel-2:#2a3530;
  --tim-panel-3:#34403a;
  --tim-line:rgba(255,255,255,.08);
  --tim-line-strong:rgba(255,255,255,.16);
  --tim-text:#f3f6f3;
  --tim-muted:#b8c5be;
  --tim-soft:#dee6e1;
  --tim-green:#788d7b;
  --tim-green-2:#97b59b;
  --tim-green-glow:#d6e4d6;
  --tim-gold:#cba14a;
  --tim-gold-soft:#efd38a;
  --tim-red:#8a1919;
  --tim-red-soft:#c34747;
  --tim-shadow:0 24px 60px rgba(0,0,0,.32);
  --tim-page:1320px;
  --tim-header-h:88px;
  --tim-speed:280ms;
  --tim-max-copy:68ch;
}
*,:before,:after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--tim-text);
  background:
    radial-gradient(circle at 14% -8%, rgba(138,171,146,.20), transparent 32%),
    radial-gradient(circle at 86% 0%, rgba(227,200,128,.12), transparent 28%),
    linear-gradient(180deg,#1a201d 0%, #101413 100%);
  min-height:100vh;
  overflow-x:hidden;
}
img,video,canvas{display:block;max-width:100%}
a{color:inherit;text-decoration:none}button{font:inherit}
.skip-link{position:absolute;left:-9999px;top:auto}
.skip-link:focus{left:16px;top:16px;z-index:1000;padding:12px 14px;background:#fff;color:#000;border-radius:10px}
.tim-page{width:min(calc(100% - 36px), var(--tim-page));margin-inline:auto}
.tim-v53-shell{position:relative}
.tim-v53-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px),linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size:52px 52px;mask-image:linear-gradient(180deg, rgba(0,0,0,.8), transparent 90%);opacity:.7;
}
.tim-v53-shell::after{
  content:"";position:fixed;inset:auto -10% 6% auto;width:520px;height:520px;border-radius:50%;
  background:radial-gradient(circle, rgba(138,171,146,.12), transparent 68%);filter:blur(36px);pointer-events:none;animation:timFloat 12s ease-in-out infinite;
}
@keyframes timFloat{0%,100%{transform:translateY(0) translateX(0)}50%{transform:translateY(-20px) translateX(-10px)}}
main{padding-top:calc(var(--tim-header-h) + 22px)}
.tim-kicker{display:inline-flex;align-items:center;gap:12px;margin-bottom:16px;color:#d9e4de;font-size:.78rem;font-weight:800;letter-spacing:.22em;text-transform:uppercase}
.tim-kicker:before{content:"";display:inline-block;width:48px;height:2px;border-radius:999px;background:linear-gradient(90deg,var(--tim-gold-soft), rgba(255,255,255,.2))}
.tim-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;padding:8px 14px;border:1px solid var(--tim-line);border-radius:999px;color:var(--tim-soft);background:rgba(255,255,255,.04);font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;backdrop-filter:blur(10px)}
.tim-title{margin:0;font-size:clamp(2.8rem, 6vw, 6.2rem);line-height:.92;letter-spacing:-.055em;font-weight:900}
.tim-title .tim-gradient,.tim-title em{font-style:normal;background:linear-gradient(135deg, #f4f7f5 10%, #d1e5d5 44%, #ecd189 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.tim-title-sm{margin:0 0 14px;font-size:clamp(1.9rem, 3.4vw, 3.5rem);line-height:1.02;letter-spacing:-.04em;font-weight:850}
.tim-lede,.tim-copy,.tim-hero-subcopy,.tim-hero-note{max-width:var(--tim-max-copy);color:var(--tim-muted);line-height:1.7;font-size:1.03rem}
.tim-copy p{margin:0 0 14px}.tim-copy p:last-child{margin-bottom:0}
.tim-section{padding:36px 0 18px}.tim-section-spacious{padding:64px 0 20px}.tim-section-heading{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}
.tim-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.tim-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;border:1px solid transparent;background:linear-gradient(180deg, #cf5656, #981d1d);color:#fff;font-weight:800;letter-spacing:.02em;box-shadow:0 14px 30px rgba(139,19,19,.26);transition:transform var(--tim-speed), box-shadow var(--tim-speed), border-color var(--tim-speed), background var(--tim-speed), filter var(--tim-speed)}
.tim-btn:hover{transform:translateY(-2px);box-shadow:0 20px 36px rgba(139,19,19,.30);filter:saturate(1.08)}
.tim-btn--ghost{background:rgba(255,255,255,.05);color:#f2f5f3;border-color:var(--tim-line-strong);box-shadow:none}.tim-btn--ghost:hover{background:rgba(255,255,255,.10)}
.tim-link{display:inline-flex;align-items:center;gap:10px;font-weight:800;color:#edf2ee}.tim-link span{opacity:.75}

.tim-header{position:fixed;inset:0 0 auto 0;z-index:90;background:rgba(12,17,16,.68);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06)}
.tim-header__bar{height:30px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(255,255,255,.04);color:#dfe8e1;font-size:.76rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.tim-header__inner{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.tim-logo{display:flex;align-items:center;gap:14px;flex-shrink:0}.tim-logo img{width:120px;height:auto}
.tim-nav{display:flex;align-items:center;gap:26px}.tim-nav a{position:relative;font-size:.96rem;font-weight:700;color:#dce5df}
.tim-nav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:linear-gradient(90deg, var(--tim-gold-soft), var(--tim-green-2));transform:scaleX(0);transform-origin:left;transition:transform var(--tim-speed)}
.tim-nav a:hover:after,.tim-nav a[aria-current="page"]:after{transform:scaleX(1)}
.tim-header__right{display:flex;align-items:center;gap:14px}.tim-header__meta{color:#cfddd4;font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.tim-menu-toggle{display:none;width:48px;height:48px;border:none;border-radius:14px;background:rgba(255,255,255,.06);color:#fff}.tim-menu-toggle span{display:block;width:20px;height:2px;margin:4px auto;background:#fff;border-radius:999px}
.tim-mobile-panel{display:none;padding:0 18px 18px;border-top:1px solid var(--tim-line);background:rgba(16,21,19,.97)}.tim-mobile-panel.is-open{display:grid;gap:12px}.tim-mobile-panel a{min-height:44px;display:flex;align-items:center;padding:0 10px;border-radius:12px;background:rgba(255,255,255,.03);font-weight:700}

.tim-hero{padding:20px 0 14px}
.tim-home-hero-shell,.tim-cta-box,.tim-panel,.tim-card,.tim-manual-cover{
  border:1px solid rgba(255,255,255,.08);border-radius:34px;
  background:linear-gradient(180deg, rgba(41,50,46,.88), rgba(17,22,20,.98));
  box-shadow:var(--tim-shadow);
}
.tim-home-hero-shell{overflow:hidden; position:relative}
.tim-home-hero-shell:before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(circle at 14% 8%, rgba(151,181,155,.08), transparent 28%), radial-gradient(circle at 82% 10%, rgba(239,211,138,.12), transparent 26%), radial-gradient(circle at 50% 100%, rgba(239,211,138,.07), transparent 28%);
}
.tim-home-stage{
  position:relative; min-height:clamp(440px, 68vh, 820px); overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:linear-gradient(180deg, rgba(18,23,22,.56), rgba(10,14,13,.72));
}
#timHeroCanvas{position:absolute; inset:0; width:100%; height:100%}
.tim-home-stage__veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(0,0,0,.18) 58%, rgba(0,0,0,.28) 100%)}
.tim-stage-badge{position:absolute;left:20px;top:18px;z-index:2;display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(9,12,11,.44);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(8px);font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.tim-stage-caption{position:absolute;right:20px;bottom:18px;z-index:2;max-width:360px;padding:14px 16px;border-radius:18px;background:rgba(12,16,15,.28);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(6px)}
.tim-stage-caption strong{display:block;margin-bottom:5px;font-size:.95rem}.tim-stage-caption span{font-size:.86rem;line-height:1.45;color:#d2ddd6}
.tim-home-hero-content{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr);gap:22px;padding:26px}
.tim-home-hero-copy{min-width:0; position:relative; z-index:2}
.tim-home-hero-side{display:grid;gap:14px;align-content:start; position:relative; z-index:2}
.tim-home-hero-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:0 26px 26px;position:relative;z-index:2}
.tim-hero-stat{padding:16px 16px 14px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(11,15,14,.42);backdrop-filter:blur(10px)}
.tim-hero-stat strong{display:block;font-size:1.28rem;letter-spacing:-.04em}.tim-hero-stat span{display:block;margin-top:4px;color:#c6d0cb;font-size:.9rem}
.tim-mini-card{position:relative;overflow:hidden;padding:18px 18px 16px;border:1px solid rgba(255,255,255,.10);border-radius:22px;background:linear-gradient(180deg, rgba(21,27,25,.48), rgba(21,27,25,.82));backdrop-filter:blur(12px);box-shadow:0 14px 34px rgba(0,0,0,.18)}
.tim-mini-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,var(--tim-gold-soft), rgba(151,181,155,.45));opacity:.9}
.tim-mini-card strong{display:block;margin-bottom:6px;font-size:1.02rem;letter-spacing:-.02em}.tim-mini-card p{margin:0;color:#c8d3cc;line-height:1.55;font-size:.93rem}
.tim-hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tim-hero-pill,.tim-chip,.tim-price-tag,.tim-manual-meta span{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);color:#ebf2ee;font-size:.84rem;font-weight:700;backdrop-filter:blur(10px)}

.tim-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:24px;align-items:center}
.tim-hero-copy{min-width:0}
.tim-hero-subcopy{margin:0}

.tim-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.tim-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.tim-panel{overflow:hidden;transition:transform var(--tim-speed), border-color var(--tim-speed), box-shadow var(--tim-speed)}
.tim-panel:hover,.tim-card:hover{transform:translateY(-4px);border-color:rgba(255,255,255,.16);box-shadow:0 26px 52px rgba(0,0,0,.34)}
.tim-panel__body{padding:24px}.tim-panel__body h3{margin:0 0 12px;font-size:1.45rem;line-height:1.05;letter-spacing:-.03em}.tim-panel__body p{margin:0;color:var(--tim-muted);line-height:1.62}
.tim-media-frame{position:relative;aspect-ratio:1.18/1;overflow:hidden;max-height:320px}.tim-media-frame--phone{aspect-ratio:10/16;background:#0b0f0e;max-height:420px}.tim-media-frame img,.tim-media-frame video{width:100%;height:100%;object-fit:cover}.tim-media-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.18));pointer-events:none}
.tim-bullet-list{display:grid;gap:12px;margin:20px 0 0}.tim-bullet{display:flex;align-items:flex-start;gap:12px;color:#d4ddd7}.tim-bullet:before{content:"";width:10px;height:10px;margin-top:7px;border-radius:50%;background:linear-gradient(180deg,var(--tim-gold-soft), var(--tim-green-2));flex-shrink:0}
.tim-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}
.tim-card{position:relative;overflow:hidden;min-height:244px;transform:translateZ(0);transition:transform var(--tim-speed), border-color var(--tim-speed), box-shadow var(--tim-speed)}
.tim-card__media{position:absolute;inset:0}.tim-card__media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(10,12,12,.08) 0%, rgba(10,12,12,.28) 52%, rgba(10,12,12,.92) 100%)}.tim-card__media img,.tim-card__media video{width:100%;height:100%;object-fit:cover}
.tim-card__content{position:absolute;inset:auto 0 0 0;z-index:2;padding:24px}.tim-card__eyebrow{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#f4f7f5;font-size:.74rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.tim-card__title{margin:12px 0 8px;font-size:clamp(1.45rem, 2.3vw, 2.4rem);line-height:.98;letter-spacing:-.05em;font-weight:880}.tim-card__text{margin:0 0 14px;color:#d2dcd6;line-height:1.55;font-size:.96rem}.tim-card__link{display:inline-flex;align-items:center;gap:10px;font-weight:800}.tim-card__link span{color:#c0cbc5}
.tim-card--copy{padding:24px}.tim-card__content-static{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;justify-content:space-between}.tim-chip-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.tim-card--1{grid-column:span 4;min-height:262px}.tim-card--2{grid-column:span 4;min-height:262px}.tim-card--3{grid-column:span 4;min-height:262px}.tim-card--4{grid-column:span 6;min-height:248px}.tim-card--5{grid-column:span 3;min-height:238px}.tim-card--6{grid-column:span 3;min-height:238px}.tim-card--full{grid-column:1 / -1;min-height:198px}
.tim-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tim-product-card{display:flex;flex-direction:column;min-height:100%}.tim-product-card .tim-media-frame{aspect-ratio:1/1}
.tim-store-badges{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}.tim-store-badges img{width:210px;max-width:100%;border-radius:10px}.tim-home-stage::after{content:"";position:absolute;inset:auto 7% 8% auto;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle, rgba(239,211,138,.18), rgba(120,141,123,.06) 38%, transparent 72%);filter:blur(18px);pointer-events:none;opacity:.9}
.tim-support-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:22px}.tim-manual-cover{overflow:hidden}.tim-manual-meta{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 0}
.tim-feature-stack{display:grid;gap:18px}.tim-feature-row{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;align-items:stretch}.tim-feature-row--flip{grid-template-columns:.95fr 1.05fr}
.tim-cta-box{padding:30px;background:radial-gradient(circle at top right, rgba(138,171,146,.18), transparent 34%), linear-gradient(180deg, rgba(42,52,48,.86), rgba(19,24,22,.98))}
.tim-marquee{margin:18px 0 6px;overflow:hidden;border-block:1px solid rgba(255,255,255,.06);background:linear-gradient(90deg, rgba(255,255,255,.03), rgba(239,211,138,.04), rgba(255,255,255,.03))}.tim-marquee__track{display:flex;width:max-content;padding:14px 0;animation:timMarquee 30s linear infinite}.tim-marquee__track span{display:inline-flex;align-items:center;gap:18px;padding:0 22px;color:#dbe5de;font-size:.9rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.tim-marquee__track span:after{content:"✦";color:rgba(255,255,255,.4)}
@keyframes timMarquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.tim-footer{padding:34px 0 40px;margin-top:30px}.tim-footer-grid{display:grid;grid-template-columns:1.1fr .8fr .8fr;gap:18px}.tim-footer-card{padding:22px;border:1px solid var(--tim-line);border-radius:24px;background:rgba(255,255,255,.04)}.tim-footer-card h4{margin:0 0 14px;font-size:1rem;letter-spacing:.08em;text-transform:uppercase}.tim-footer-card p{margin:0;color:var(--tim-muted);line-height:1.65}.tim-footer-links{display:grid;gap:10px}.tim-footer-bottom{margin-top:18px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:#95a49b;font-size:.9rem}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .8s ease, transform .8s ease}[data-reveal].is-visible{opacity:1;transform:none}

@media (max-width:1180px){.tim-home-hero-content{grid-template-columns:1fr}.tim-home-hero-side{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1100px){.tim-grid-2,.tim-feature-row,.tim-feature-row--flip,.tim-support-grid,.tim-hero-grid{grid-template-columns:1fr}.tim-card--1,.tim-card--2,.tim-card--3{grid-column:span 6}.tim-card--4{grid-column:span 12}.tim-card--5,.tim-card--6{grid-column:span 6}.tim-product-grid,.tim-grid-3{grid-template-columns:1fr 1fr}}
@media (max-width:920px){.tim-nav,.tim-header__meta,.tim-header__right .tim-btn{display:none}.tim-menu-toggle{display:inline-block}.tim-logo img{width:108px}.tim-product-grid,.tim-grid-3{grid-template-columns:1fr 1fr}.tim-home-hero-metrics{grid-template-columns:1fr 1fr}}
@media (max-width:760px){
  .tim-page{width:min(calc(100% - 24px), var(--tim-page))}
  main{padding-top:calc(var(--tim-header-h) + 12px)}
  .tim-header__bar{font-size:.68rem;letter-spacing:.12em;text-align:center;padding:0 10px}
  .tim-title{font-size:clamp(2.45rem, 12vw, 4.2rem)}
  .tim-home-hero-shell,.tim-cta-box,.tim-panel,.tim-card,.tim-manual-cover{border-radius:26px}
  .tim-home-stage{min-height:clamp(420px, 62svh, 640px)}
  .tim-stage-badge{left:14px;top:14px;right:auto;max-width:calc(100% - 28px);font-size:.72rem;letter-spacing:.10em}
  .tim-stage-caption{display:none}
  .tim-home-hero-content{padding:20px;grid-template-columns:1fr;gap:18px}
  .tim-home-hero-side{grid-template-columns:1fr}
  .tim-home-hero-metrics{padding:0 20px 20px;grid-template-columns:1fr}
  .tim-card--1,.tim-card--2,.tim-card--3,.tim-card--4,.tim-card--5,.tim-card--6{grid-column:1 / -1;min-height:232px}
  .tim-grid-3,.tim-product-grid,.tim-footer-grid{grid-template-columns:1fr}
  .tim-footer-bottom{flex-direction:column}
  .tim-store-badges img{width:180px}
}

/* V5.7 hero performance / realism pass */
#timHeroCanvas{
  transform:translateZ(0);
  backface-visibility:hidden;
  image-rendering:auto;
}
.tim-home-stage{
  background:
    radial-gradient(circle at 76% 22%, rgba(202,158,68,.08), transparent 28%),
    radial-gradient(circle at 16% 18%, rgba(187,203,187,.045), transparent 30%),
    linear-gradient(180deg, rgba(39,44,41,.62), rgba(12,15,13,.88));
}
.tim-home-stage__veil{
  background:linear-gradient(180deg, rgba(255,255,255,.018), rgba(0,0,0,.10) 58%, rgba(0,0,0,.22) 100%);
}
.tim-stage-caption{
  background:rgba(8,10,9,.34);
  border-color:rgba(236,214,153,.13);
}

/* V5.8 hero pass: wider breathing room, slightly lighter luxury-tech palette */
.tim-home-stage{
  min-height:clamp(460px, 70vh, 860px);
  background:
    radial-gradient(circle at 76% 20%, rgba(232,198,112,.09), transparent 30%),
    radial-gradient(circle at 18% 14%, rgba(176,192,176,.05), transparent 30%),
    linear-gradient(180deg, rgba(44,50,47,.58), rgba(11,15,14,.90));
}
.tim-home-hero-shell:before{
  background:
    radial-gradient(circle at 14% 8%, rgba(175,192,180,.09), transparent 28%),
    radial-gradient(circle at 84% 10%, rgba(239,211,138,.15), transparent 28%),
    radial-gradient(circle at 50% 100%, rgba(239,211,138,.08), transparent 28%);
}
.tim-stage-badge{
  background:rgba(9,12,11,.38);
  border-color:rgba(255,255,255,.14);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}
.tim-stage-caption{
  max-width:380px;
  background:rgba(8,10,9,.26);
  border-color:rgba(236,214,153,.16);
}
.tim-mini-card{
  background:linear-gradient(180deg, rgba(22,28,26,.42), rgba(17,21,20,.82));
}
.tim-home-hero-metrics .tim-hero-stat{
  background:rgba(11,15,14,.34);
}
@media (max-width:760px){
  .tim-home-stage{min-height:clamp(430px, 64svh, 680px)}
}

/* V5.9: additive theme. V5.8 remains available unchanged for comparison. */
:root{--tim-bg:#101211;--tim-muted:#b8bcb7;--tim-gold:#cec2a0;--tim-gold-soft:#ded3b6;--tim-page:1280px;--tim-header-h:106px;--tim-red:#800d17}
body{background:#101211;font-family:'Segoe UI',Arial,sans-serif}
.tim-v53-shell::before,.tim-v53-shell::after,.tim-home-hero-shell::before,.tim-home-stage::after{display:none}
.tim-page{width:min(calc(100% - 64px),var(--tim-page))}
.tim-header{background:rgba(14,16,15,.96)}
.tim-header__bar{height:28px;font-size:12px;color:#cbc1a6;letter-spacing:.22em}
.tim-header__inner{min-height:78px}.tim-logo img{width:134px}.tim-header__meta{display:none}
.tim-nav{gap:28px}.tim-nav a{font-size:14px;font-weight:500}.tim-nav a[aria-current=page]{color:#e1d4ae}
.tim-btn{border-radius:5px;background:#810e19;box-shadow:none;font-size:14px;font-weight:650;letter-spacing:.03em;padding:0 22px}
.tim-btn:hover{background:#a01825;box-shadow:none}.tim-btn--ghost{background:transparent;border-color:#5c6059}.tim-btn--ghost:hover{background:#272c27}
a:focus-visible,button:focus-visible{outline:2px solid #e5d3a0;outline-offset:5px}
.tim-hero{padding:28px 0 0}.tim-title{font-size:clamp(2.8rem,5.2vw,5rem);font-weight:650;line-height:1.04;letter-spacing:-.055em}
.tim-title .tim-gradient,.tim-title em{background:none;color:#d1c4a1}.tim-title-sm{font-weight:600;line-height:1.13;letter-spacing:-.04em}
.tim-eyebrow{background:none;border:0;border-radius:0;padding:0;color:#d1c4a1;font-size:12px;letter-spacing:.18em}
.tim-kicker{font-size:12px;color:#d1c4a1}.tim-lede,.tim-hero-note{font-size:17px;line-height:1.75}
.tim-home-hero-shell{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;border:0;border-radius:0;box-shadow:none;background:none;overflow:visible}
.tim-home-hero-content{grid-column:1;grid-row:1;padding:52px 0 30px;display:block;align-self:center}
.tim-home-hero-side{display:none}.tim-home-hero-copy .tim-actions .tim-btn:last-child{display:none}
.tim-home-stage{grid-column:2;grid-row:1;min-height:560px;border:1px solid #30342d;border-radius:8px;background:#161a16;isolation:isolate}
.tim-hero-fallback{position:absolute;height:76%;width:70%;object-fit:contain;left:15%;top:12%;opacity:.8}
.tim-stage-badge{top:22px;left:22px;padding:0;background:none;border:0;border-radius:0;box-shadow:none;font-weight:500;font-size:12px;color:#d1c4a1}
.tim-stage-caption{left:22px;right:auto;bottom:68px;padding:0;background:none;border:0;backdrop-filter:none}.tim-stage-caption strong{font-size:22px;font-weight:500}.tim-stage-caption span{font-size:12px;color:#b7b9b0}
.tim-motion-toggle{position:absolute;z-index:3;bottom:18px;left:22px;min-height:36px;background:#20251f;border:1px solid #6b705f;border-radius:4px;padding:7px 12px;color:#eee7d6;cursor:pointer;font-size:12px}
.tim-film-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#2f342b}.tim-film-progress span{display:block;height:100%;background:#cbbb8f;transform-origin:left;transform:scaleX(0)}
.tim-home-stage__veil{background:linear-gradient(0deg,rgba(9,12,9,.6),transparent 30%);z-index:1}
.tim-home-hero-metrics{grid-column:1/-1;grid-row:2;padding:28px 0 0;gap:0;margin-top:28px;border-top:1px solid #34382f}
.tim-home-hero-metrics .tim-hero-stat{border:0;border-radius:0;background:none;padding:0 24px;border-right:1px solid #34382f;backdrop-filter:none}.tim-hero-stat:first-child{padding-left:0}.tim-hero-stat:last-child{border-right:0}
.tim-hero-stat strong{color:#cbbb96;font-size:14px;font-weight:500}.tim-hero-stat span{line-height:1.6;font-size:14px;margin-top:8px}
.tim-hero-pill,.tim-chip,.tim-price-tag,.tim-manual-meta span{background:none;border-radius:4px;border-color:#383e34;font-size:14px;font-weight:400;padding:5px 10px}
.tim-hero-pills{gap:8px;margin-top:22px}.tim-home-hero-copy .tim-hero-pill:nth-child(n+3){display:none}
.tim-marquee{margin-top:40px;background:#171c16}.tim-marquee__track{animation:none;width:auto;flex-wrap:wrap;justify-content:center;gap:12px;padding:16px}.tim-marquee__track span{font-size:12px;font-weight:500;padding:0 8px;letter-spacing:.07em}.tim-marquee__track span:nth-child(n+6){display:none}.tim-marquee__track span:after{display:none}
.tim-section-spacious{padding:76px 0 0}.tim-section-heading{max-width:760px;gap:4px;margin-bottom:32px}
.tim-panel,.tim-card,.tim-manual-cover,.tim-cta-box{border-radius:8px;background:#191e18;border-color:#333a2e;box-shadow:none}
.tim-panel:hover,.tim-card:hover{transform:none;box-shadow:none;border-color:#696e58}
.tim-bento{gap:24px}.tim-card--1,.tim-card--2,.tim-card--3{grid-column:span 4}
.tim-card__media{position:relative;height:270px;background:#20261d}.tim-card__media:after{display:none}.tim-card__media img,.tim-card__media video{object-fit:contain;padding:16px}.tim-card__media video{padding:0;background:#090b09}
.tim-card__content{position:relative;padding:24px}.tim-card__eyebrow{padding:0;min-height:20px;border:0;border-radius:0;background:none;font-size:12px;color:#cfc29e;font-weight:500}
.tim-card__title{font-size:26px;line-height:1.14;font-weight:600;letter-spacing:-.03em}.tim-card__text{font-size:16px;line-height:1.65}.tim-card__link{font-size:14px;color:#e1d5b7;font-weight:600;min-height:36px}
.tim-card--4{grid-column:span 6}.tim-card--5,.tim-card--6{grid-column:span 3}.tim-card--full{background:#252e22;padding:36px}
.tim-cta-box{padding:44px;background:#222b20}.tim-panel__body h3{line-height:1.2;font-weight:600}.tim-media-frame img{object-fit:contain}
.tim-footer{border-top:1px solid #333a2e;margin-top:76px;padding:40px 0 30px}.tim-footer-card{border:0;border-radius:0;background:none;padding:0 22px 20px 0}.tim-footer-bottom{padding-top:20px;border-top:1px solid #30362b;font-size:12px}
[data-reveal]{opacity:1;transform:none} /* Content remains readable if JS or observers fail. */
@media(max-width:1100px){.tim-home-hero-shell{gap:0 24px}.tim-title{font-size:clamp(2.7rem,5.5vw,4.2rem)}.tim-home-stage{min-height:510px}.tim-nav{gap:18px}.tim-card--1,.tim-card--2,.tim-card--3{grid-column:span 4}.tim-card__content{padding:18px}.tim-card__title{font-size:23px}}

/* V6.3 mobile title spacing fix.
   Desktop keeps the intentional line break. Mobile hides the <br> and
   explicitly exposes the whitespace span so "chaos to" never joins. */
.tim-home-hero-copy .tim-title .tim-mobile-space{display:none}

@media(max-width:920px){.tim-page{width:calc(100% - 36px)}.tim-home-hero-shell{grid-template-columns:1fr}.tim-home-hero-content{grid-row:1;padding:24px 0 32px;max-width:640px}.tim-home-stage{grid-column:1;grid-row:2;min-height:460px}.tim-home-hero-metrics{grid-row:3}.tim-title{font-size:clamp(3rem,8vw,4.4rem)}.tim-logo img{width:124px}.tim-stage-caption{display:block}.tim-card--1,.tim-card--2,.tim-card--3{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.tim-card__media{height:100%;min-height:280px}.tim-card--4{grid-column:1/-1}.tim-card--4 .tim-card__media{height:380px}.tim-card--5,.tim-card--6{grid-column:span 6}.tim-home-hero-metrics{grid-template-columns:repeat(2,1fr);gap:24px}.tim-home-hero-metrics .tim-hero-stat{padding:0 16px 0 0;border:0}.tim-nav{display:none}}
@media(max-width:540px){.tim-title{font-size:clamp(2.7rem,11vw,3.6rem)}.tim-home-stage{min-height:390px}.tim-card--1,.tim-card--2,.tim-card--3{display:block}.tim-card__media{height:300px;min-height:0}.tim-card--5,.tim-card--6{grid-column:1/-1}.tim-cta-box,.tim-card--full{padding:24px}.tim-section-spacious{padding-top:52px}.tim-home-hero-content{padding-top:8px}.tim-home-hero-copy .tim-actions{gap:10px}.tim-btn{padding:0 17px}.tim-header__bar{font-size:12px;letter-spacing:.06em}.tim-title-sm{font-size:2rem}.tim-hero-grid,.tim-support-grid,.tim-grid-2{min-width:0}.tim-home-hero-metrics{margin-top:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* V6.0 restores the edge-to-edge cinematic stage. One active CSS file avoids
   stale mixed-version styles; earlier standalone CSS files remain for review. */
.tim-brand-art{display:block;width:134px;height:68px;max-width:100%;overflow:visible}
.tim-logo{min-width:134px;min-height:68px}.tim-footer-card .tim-brand-art{margin-bottom:16px}
main{padding-top:var(--tim-header-h)}
.tim-hero--cinematic{padding:0}
.tim-hero--cinematic>.tim-page{width:100%;max-width:none}
.tim-home-hero-shell{display:grid;grid-template-columns:1fr;gap:0;position:relative}
.tim-home-stage{grid-column:1;grid-row:1;width:100%;min-height:680px;height:calc(100svh - var(--tim-header-h));max-height:1100px;border:0;border-radius:0;overflow:hidden;background:#141d1a}
#timHeroCanvas{width:100%;height:100%;position:absolute;inset:0;outline:0}
.tim-home-stage__veil{background:linear-gradient(0deg,rgba(8,13,10,.77),transparent 37%),linear-gradient(90deg,rgba(8,13,10,.24),transparent 48%);pointer-events:none}
.tim-stage-topline{position:absolute;z-index:2;top:25px;left:max(32px,calc((100vw - 1280px)/2));right:max(32px,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;gap:20px;color:#d2d3c5;font-size:12px;letter-spacing:.16em;text-transform:uppercase}
.tim-home-hero-content{grid-column:1;grid-row:1;z-index:2;align-self:end;width:min(calc(100% - 64px),1280px);margin:0 auto;padding:0 0 54px;pointer-events:none}
.tim-home-hero-copy{max-width:590px}.tim-home-hero-copy .tim-title{font-size:clamp(3.2rem,5.3vw,5.7rem);line-height:1.01;text-shadow:0 4px 32px #0b100cb0}
.tim-home-hero-copy .tim-hero-note{max-width:460px;color:#d1d5ca;margin:18px 0 0;font-size:16px;line-height:1.6}
.tim-home-hero-copy .tim-eyebrow,.tim-home-hero-copy .tim-hero-pills,.tim-home-hero-side{display:none}
.tim-home-hero-copy .tim-actions{margin-top:22px;pointer-events:auto}
.tim-home-hero-copy .tim-actions .tim-btn:last-child{display:none}
.tim-home-hero-copy .tim-btn--ghost{background:#141c17b0;border-color:#89937c}
.tim-scene-story{position:absolute;z-index:2;bottom:94px;right:max(32px,calc((100vw - 1280px)/2));text-align:right;color:#e7e1cd;pointer-events:none}
.tim-scene-story span{display:block;font-size:12px;letter-spacing:.22em;margin-bottom:12px;color:#cdbd8f}
.tim-scene-story strong{font-size:20px;font-weight:400;letter-spacing:.01em}
.tim-motion-toggle{left:auto;right:max(32px,calc((100vw - 1280px)/2));bottom:42px;background:#0c140ec9;border-color:#697860;min-height:40px;font-size:13px}
.tim-home-hero-metrics{grid-row:2;grid-column:1;width:min(calc(100% - 64px),1280px);margin:0 auto;padding:30px 0;border:0;background:none;grid-template-columns:repeat(4,1fr)}
.tim-marquee{margin:0}.tim-film-progress{z-index:4;height:2px}
.tim-render-fallback{position:absolute;top:36%;width:100%;text-align:center;color:#d9cda8}
.tim-header{backdrop-filter:none}.tim-header__inner .tim-btn{min-height:44px}
.tim-card video{visibility:visible}.tim-video-wrap{position:relative;width:100%;height:100%}
.tim-video-retry{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);padding:13px 20px;border:1px solid #d5c594;background:#111b14ef;color:#fff;border-radius:5px;cursor:pointer;z-index:5}
.tim-card__media img{content-visibility:auto}.tim-card--4 .tim-card__media video{object-fit:contain}
@media(max-width:920px){
 .tim-brand-art{width:124px;height:64px}.tim-logo{min-width:124px;min-height:64px}
 .tim-home-stage{height:68svh;min-height:480px;max-height:700px}
 .tim-home-hero-content{grid-row:2;width:calc(100% - 36px);padding:30px 0;pointer-events:auto}
 .tim-home-hero-metrics{grid-row:3;width:calc(100% - 36px);grid-template-columns:repeat(2,1fr);border-top:1px solid #343e30;padding:24px 0}
 .tim-home-hero-copy{max-width:660px}.tim-home-hero-copy .tim-title{font-size:clamp(3rem,8vw,4.5rem)}
 .tim-home-hero-copy .tim-title br{display:block}
 .tim-home-hero-copy .tim-title .tim-mobile-space{display:none}
 .tim-home-hero-copy .tim-title .tim-gradient:before{content:none}
 .tim-home-stage__veil{background:linear-gradient(0deg,rgba(8,13,10,.7),transparent 27%)}
 .tim-stage-topline{left:20px;right:20px;top:22px;font-size:12px;letter-spacing:.09em}
 .tim-stage-topline span:last-child{display:none}
 .tim-scene-story{bottom:30px;left:20px;right:auto;text-align:left;max-width:calc(100% - 170px)}
 .tim-scene-story strong{font-size:16px;line-height:1.3}.tim-scene-story span{font-size:12px;margin-bottom:6px}
 .tim-motion-toggle{bottom:28px;right:20px;font-size:12px;padding:8px 10px}
}
@media(max-width:540px){.tim-home-stage{height:65svh;min-height:440px}.tim-home-hero-copy .tim-title{font-size:2.45rem;line-height:1.06}.tim-home-hero-content{padding:27px 0}.tim-home-hero-copy .tim-hero-note{font-size:16px}.tim-home-hero-metrics{gap:22px}.tim-stage-topline{left:18px;right:18px}.tim-scene-story{left:18px}.tim-motion-toggle{right:18px}.tim-hero-stat span{font-size:14px}}

/* ================================================================
   TIM WEBSITE V6.3
   App-aligned tile system + phone-controlled moving-target story.
   Additive overrides only: earlier V6.x rules remain above for reference.
   ================================================================ */

:root{
  --tim-v63-charcoal:#0f1016;
  --tim-v63-slate:#25283d;
  --tim-v63-plum:#4a3b6c;
  --tim-v63-cherry:#541c24;
  --tim-v63-cherry-hi:#7a2833;
  --tim-v63-gold:#d2c3a0;
  --tim-v63-olive:#566143;
}

/* Phone -> Bluetooth -> moving target overlay in the cinematic hero. */
.tim-control-story{
  --target-shift:0px;
  position:absolute;right:clamp(22px,5vw,84px);bottom:clamp(94px,13vh,158px);z-index:3;
  display:flex;align-items:center;gap:15px;opacity:0;transform:translateY(14px) scale(.96);
  transition:opacity .45s ease,transform .45s ease;pointer-events:none;
}
.tim-control-story.is-active,.tim-control-story.is-mastery{opacity:1;transform:none}
.tim-control-story.is-mastery{opacity:.72;transform:scale(.88);transform-origin:right bottom}
.tim-phone-demo{width:112px;height:202px;border:1px solid #ddd0ae;border-radius:20px;padding:7px;background:#080b0a;box-shadow:0 18px 55px #0009,0 0 0 1px #000 inset}
.tim-phone-demo__speaker{width:34px;height:4px;border-radius:99px;background:#343a35;margin:1px auto 6px}
.tim-phone-demo__screen{height:177px;border-radius:13px;padding:12px 9px;background:linear-gradient(150deg,#0f1016 4%,#25283d 58%,#4a3b6c 150%);border:1px solid #ffffff14;display:flex;flex-direction:column;align-items:center;box-shadow:inset 0 0 35px #0007}
.tim-phone-demo__brand{font-size:17px;font-weight:800;letter-spacing:.14em;color:#d2c3a0}.tim-phone-demo__screen small{font-size:6.5px;letter-spacing:.12em;margin-top:5px;color:#d7dad2}
.tim-phone-demo__status{display:flex;gap:5px;align-items:center;margin:18px 0 14px;font-size:8px;letter-spacing:.13em}.tim-phone-demo__status i{width:6px;height:6px;border-radius:50%;background:#9b2e38;box-shadow:0 0 9px #9b2e38}
.tim-control-story.is-commanding .tim-phone-demo__status i{background:#d2c3a0;box-shadow:0 0 11px #d2c3a0}
.tim-phone-demo__controls{width:100%;display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:5px;align-items:center;text-align:center;font-size:10px}.tim-phone-demo__controls>*{padding:5px 2px;border-radius:5px;background:#ffffff0b;border:1px solid #ffffff17}
.tim-phone-demo__start{margin-top:auto;width:100%;padding:7px 4px;text-align:center;border-radius:7px;background:linear-gradient(#6d2630,#42161d);border:1px solid #a54a54;color:#fff;font-size:8px;font-weight:800;letter-spacing:.14em}
.tim-control-story.is-commanding .tim-phone-demo__start{background:linear-gradient(#806f43,#4f482f);border-color:#bda96f;color:#fff9e8}
.tim-wireless-story{position:relative;width:72px;height:64px;display:grid;place-items:center}.tim-wireless-story span{position:absolute;border:1px solid #d2c3a0;border-left-color:transparent;border-bottom-color:transparent;border-radius:50%;transform:rotate(45deg);opacity:.18}.tim-wireless-story span:nth-child(1){width:22px;height:22px}.tim-wireless-story span:nth-child(2){width:40px;height:40px}.tim-wireless-story span:nth-child(3){width:58px;height:58px}
.tim-control-story.is-commanding .tim-wireless-story span{animation:timSignal 1.15s ease-out infinite}.tim-control-story.is-commanding .tim-wireless-story span:nth-child(2){animation-delay:.18s}.tim-control-story.is-commanding .tim-wireless-story span:nth-child(3){animation-delay:.36s}
.tim-wireless-story small,.tim-motion-story small{position:absolute;bottom:-9px;white-space:nowrap;font-size:7px;letter-spacing:.14em;color:#d2c3a0}
@keyframes timSignal{0%{opacity:.12;transform:rotate(45deg) scale(.65)}55%{opacity:.9}100%{opacity:.06;transform:rotate(45deg) scale(1.08)}}
.tim-motion-story{position:relative;width:110px;height:65px;display:grid;place-items:center}.tim-motion-story__rail{position:absolute;width:94px;height:2px;background:linear-gradient(90deg,transparent,#8e987f,#d2c3a0,#8e987f,transparent);box-shadow:0 0 12px #d2c3a055}.tim-motion-story__target{font-size:36px;line-height:1;color:#d2c3a0;text-shadow:0 0 14px #d2c3a066;transform:translateX(var(--target-shift));transition:transform .07s linear}

/* Short three-part value proposition directly under the hero. */
.tim-value-strip{padding:56px 0 18px;background:linear-gradient(180deg,#0d120f,#151a16)}
.tim-value-kicker{margin:0 0 28px;text-align:center;font-size:clamp(16px,2vw,22px);font-weight:650;letter-spacing:.035em;color:#e3dbc6}
.tim-value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.tim-value-grid article{position:relative;min-height:150px;padding:24px 26px;border:1px solid #3c4438;border-radius:18px;background:linear-gradient(145deg,#171c18 0%,#202720 100%);overflow:hidden}
.tim-value-grid article:after{content:"";position:absolute;inset:auto -20% -75% 30%;height:150px;background:radial-gradient(circle,#d2c3a01a,transparent 68%)}
.tim-value-grid span{display:block;color:#8c967f;font-size:12px;letter-spacing:.16em}.tim-value-grid strong{display:block;margin:7px 0 8px;color:#d8c9a6;font-size:20px;letter-spacing:.09em}.tim-value-grid p{margin:0;color:#aeb7ad;line-height:1.55;font-size:14px}

/* App-inspired parent tiles with nested child tiles. */
.tim-section-heading--app{max-width:780px}.tim-bento--app{gap:18px}
.tim-card--app{border-radius:22px;background:linear-gradient(145deg,#151a18 0%,#20251f 62%,#292b31 130%);border-color:#3d463a;box-shadow:0 16px 42px #00000024;overflow:hidden}
.tim-card--app:hover{border-color:#746d57;box-shadow:0 20px 55px #00000033;transform:translateY(-2px)}
.tim-card--app .tim-card__media{background:linear-gradient(135deg,#111612,#20261e);height:238px}
.tim-card--app .tim-card__content,.tim-card--app .tim-card__content-static{padding:24px}
.tim-card--app .tim-card__title{font-size:24px}.tim-card--app .tim-card__eyebrow{color:#d2c3a0;letter-spacing:.14em}
.tim-card--app .tim-card__link{margin-top:18px;color:#eadfbe}
.tim-card--app .tim-card__link:hover{color:#fff}
.tim-card--app.tim-card--2{background:linear-gradient(135deg,#0f1016 0%,#25283d 72%,#4a3b6c 155%)}
.tim-card--app.tim-card--3{background:linear-gradient(145deg,#141713,#23251f 60%,#3b3429 125%)}
.tim-card--app.tim-card--5{background:linear-gradient(145deg,#151915,#20251e)}
.tim-card--app.tim-card--6{background:linear-gradient(145deg,#141516,#24242c 60%,#392e45 125%)}
.tim-card--closing{background:linear-gradient(120deg,#151b17,#263025 55%,#34252a)!important;border-color:#675c45}
.tim-subtiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:18px}
.tim-subtiles a{display:flex;flex-direction:column;gap:4px;min-width:0;padding:12px 13px;border:1px solid #ffffff16;border-radius:12px;background:#070a0890;transition:border-color .2s,background .2s,transform .2s}
.tim-subtiles a:hover{border-color:#8e8161;background:#161913;transform:translateY(-1px)}
.tim-subtiles b{color:#e3dbc6;font-size:13px;font-weight:650}.tim-subtiles small{color:#8f9b91;font-size:11px;white-space:nowrap}
.tim-subtiles--scroll{grid-template-columns:repeat(3,minmax(96px,1fr))}.tim-subtiles--compact{grid-template-columns:1fr}
.tim-card--motion{grid-column:span 6}.tim-card--motion .tim-card__media{height:100%;min-height:360px}.tim-card--motion .tim-card__content{display:flex;flex-direction:column;justify-content:center}
.tim-card--4.tim-card--app{display:grid;grid-template-columns:1.15fr .85fr}
.tim-card--5.tim-card--app,.tim-card--6.tim-card--app{grid-column:span 3}

/* How-To placeholder framework: real YouTube IDs can be dropped in later. */
.tim-howto-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.tim-howto-card{position:relative;min-height:174px;padding:22px;border:1px solid #3b4238;border-radius:18px;background:linear-gradient(145deg,#151a17,#20241f);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.tim-howto-card:before{content:"▶";position:absolute;top:22px;left:22px;width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:#541c24;border:1px solid #8b3943;color:#fff;font-size:14px}.tim-howto-card strong{font-size:17px;color:#e0d7c1}.tim-howto-card span{margin-top:5px;color:#94a095;font-size:13px}
.tim-howto-card em{position:absolute;top:28px;right:20px;font-style:normal;font-size:10px;letter-spacing:.11em;color:#879187}

/* Dark cherry remains the primary action color across V6.3. */
.tim-btn:not(.tim-btn--ghost){background:linear-gradient(#6f2630,#42161d);border-color:#8d3b46}.tim-btn:not(.tim-btn--ghost):hover{background:linear-gradient(#7f2b37,#501921);border-color:#aa4b57}

@media(max-width:920px){
 .tim-control-story{right:22px;bottom:36px;transform:translateY(12px) scale(.8);transform-origin:right bottom}.tim-control-story.is-active{transform:scale(.8)}.tim-control-story.is-mastery{transform:scale(.68)}
 .tim-value-grid{grid-template-columns:1fr}.tim-value-strip{padding-top:38px}
 .tim-card--4.tim-card--app{grid-template-columns:1fr}.tim-card--motion .tim-card__media{min-height:310px}.tim-card--5.tim-card--app,.tim-card--6.tim-card--app{grid-column:1/-1}
 .tim-howto-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
 .tim-control-story{right:10px;bottom:26px;gap:7px;transform:scale(.62);transform-origin:right bottom}.tim-control-story.is-active{transform:scale(.62)}.tim-control-story.is-mastery{transform:scale(.54)}
 .tim-wireless-story{width:52px}.tim-motion-story{width:85px}
 .tim-subtiles--scroll{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:5px;-webkit-overflow-scrolling:touch}.tim-subtiles--scroll a{min-width:118px;scroll-snap-align:start}
 .tim-howto-grid{grid-template-columns:1fr}.tim-value-kicker{text-align:left}.tim-card--app .tim-card__content,.tim-card--app .tim-card__content-static{padding:20px}
}
@media(prefers-reduced-motion:reduce){.tim-wireless-story span{animation:none!important}.tim-motion-story__target{transition:none}.tim-card--app{transition:none}}


/* ================================================================
   TIM WEBSITE V6.4
   Targeted refinement layer:
   - constrains inner-page hero media so it supports the copy instead
     of overtaking the viewport;
   - keeps app screenshots centered inside their cards;
   - adds a Challenge Friend showcase layout;
   - updates support/manual presentation without changing the approved
     V6.3 home animation or unrelated site behavior.
   ================================================================ */

/* Inner-page hero media: deliberate, compact, premium presentation. */
body:not(.page-home) .tim-hero{padding:34px 0 28px}
body:not(.page-home) .tim-hero-grid{align-items:center;gap:42px}
body:not(.page-home) .tim-hero-copy{align-self:center}
.tim-hero-panel{
  width:min(100%,620px);
  max-width:620px;
  justify-self:end;
  overflow:hidden;
  border:1px solid var(--tim-line);
  border-radius:26px;
  background:linear-gradient(145deg,#111614,#1b231f);
  box-shadow:var(--tim-shadow);
}
.tim-hero-panel__grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  grid-template-rows:250px 180px;
  gap:12px;
  padding:12px;
}
.tim-surface{
  position:relative;
  min-width:0;
  min-height:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  background:#0a0e0c;
}
.tim-surface--tall{grid-row:1 / span 2}
.tim-surface img,.tim-surface video{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  margin:auto;
}
.tim-surface__badge{
  position:absolute;
  z-index:3;
  top:11px;
  left:11px;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  background:rgba(9,12,11,.78);
  color:#e7ddc2;
  font-size:.7rem;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
}
.tim-surface__copy{
  position:absolute;
  z-index:2;
  left:0;
  right:0;
  bottom:0;
  padding:42px 14px 14px;
  background:linear-gradient(180deg,transparent,rgba(5,8,7,.92));
}
.tim-surface__copy strong{display:block;margin-bottom:4px;line-height:1.15}
.tim-surface__copy span{display:block;color:#b8c5be;font-size:.82rem;line-height:1.4}
.tim-surface--text{display:flex;align-items:flex-end;padding:16px;background:linear-gradient(145deg,#1c251f,#252d28)}
.tim-surface--text p{margin:8px 0 0;color:#c7d0ca;line-height:1.5;font-size:.9rem}

/* App screenshots are portrait assets: center them instead of pinning left. */
.tim-media-frame--phone{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#0b0f0e;
}
.tim-media-frame--phone img{
  display:block;
  width:auto;
  max-width:100%;
  height:100%;
  max-height:100%;
  margin:0 auto;
  object-fit:contain;
  object-position:center center;
}
.tim-media-frame img,.tim-media-frame video{object-position:center center}

/* Support manual cover should read like a cover, not a full-height page image. */
.tim-manual-cover{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:0;
  max-height:560px;
  padding:16px;
  background:#0e1210;
}
.tim-manual-cover img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:528px;
  object-fit:contain;
  object-position:center;
  margin:auto;
}

/* Challenge Friend feature: make a key app capability visible without
   overcrowding the six-card capabilities grid. */
.tim-friend-feature{align-items:center}
.tim-friend-feature .tim-media-frame--phone{max-height:520px;min-height:430px}
.tim-friend-feature .tim-panel__body h3{font-size:clamp(1.7rem,3vw,2.8rem);margin-top:8px}

@media(max-width:1100px){
  body:not(.page-home) .tim-hero-panel{justify-self:center;width:min(100%,680px);max-width:680px}
  body:not(.page-home) .tim-hero-grid{gap:28px}
}
@media(max-width:760px){
  body:not(.page-home) .tim-hero{padding-top:18px}
  .tim-hero-panel{border-radius:22px}
  .tim-hero-panel__grid{grid-template-rows:230px 155px;gap:9px;padding:9px}
  .tim-surface{border-radius:15px}
  .tim-surface__copy{padding:34px 10px 10px}
  .tim-surface__copy span{font-size:.74rem}
  .tim-surface--text{padding:12px}
  .tim-surface--text p{font-size:.8rem;line-height:1.4}
  .tim-manual-cover{max-height:470px;padding:12px}
  .tim-manual-cover img{max-height:446px}
  .tim-friend-feature .tim-media-frame--phone{min-height:390px;max-height:450px}
}
@media(max-width:540px){
  .tim-hero-panel__grid{grid-template-rows:205px 140px}
  .tim-surface__badge{top:8px;left:8px;font-size:.62rem;min-height:24px;padding:0 8px}
  .tim-surface__copy span{display:none}
  .tim-manual-cover{max-height:410px}
  .tim-manual-cover img{max-height:386px}
}


/* ================================================================
   TIM WEBSITE V6.4.1 — TRADEMARK PRESENTATION
   Adds a restrained ™ mark to the primary TIM brand presentation
   without modifying the master SVG logo artwork.
   ================================================================ */
.tim-logo{position:relative}
.tim-trademark{
  position:absolute;
  top:7px;
  right:-7px;
  z-index:3;
  color:#d2c3a0;
  font-size:11px;
  line-height:1;
  font-weight:800;
  letter-spacing:0;
  pointer-events:none;
}
.tim-inline-tm{
  font-size:.55em;
  line-height:0;
  vertical-align:super;
  margin-left:.05em;
  letter-spacing:0;
}
.tim-footer-brand{position:relative}
.tim-footer-brand .tim-trademark--footer{
  top:1px;
  right:auto;
  left:126px;
}
@media(max-width:920px){
  .tim-trademark{top:7px;right:-5px;font-size:10px}
  .tim-footer-brand .tim-trademark--footer{left:116px}
}

/* =====================================================================
   TIM WEBSITE V6.4.4 — THREE-THEME APPEARANCE LAYER
   ---------------------------------------------------------------------
   Mirrors the TIM app's Night / Day / Modern appearance choices.
   The approved cinematic hero stays intentionally dark across themes so
   its particles, device rendering and overlaid copy remain readable.
   ===================================================================== */

/* Theme switcher — injected into the existing header by tim-theme-v643.js. */
.tim-theme-switcher{position:relative;z-index:100}
.tim-theme-switcher__trigger{
  min-height:38px;padding:0 11px;border:1px solid var(--tim-line-strong);border-radius:10px;
  background:rgba(255,255,255,.045);color:var(--tim-text);display:flex;align-items:center;gap:7px;
  cursor:pointer;font-size:11px;font-weight:750;letter-spacing:.035em;transition:background .2s,border-color .2s,color .2s
}
.tim-theme-switcher__trigger:hover{background:rgba(255,255,255,.085);border-color:rgba(210,195,160,.48)}
.tim-theme-switcher__icon{width:14px;height:14px;border:1.5px solid currentColor;border-radius:50%;position:relative;overflow:hidden;opacity:.9}
.tim-theme-switcher__icon:after{content:"";position:absolute;inset:0 0 0 50%;background:currentColor;opacity:.7}
.tim-theme-switcher__current{color:#d2c3a0}
.tim-theme-switcher__menu{
  position:absolute;top:calc(100% + 9px);right:0;min-width:176px;padding:7px;border:1px solid var(--tim-line-strong);
  border-radius:13px;background:rgba(12,16,15,.98);box-shadow:0 18px 46px rgba(0,0,0,.34);backdrop-filter:blur(16px);
  opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .18s,transform .18s,visibility .18s
}
.tim-theme-switcher.is-open .tim-theme-switcher__menu{opacity:1;visibility:visible;transform:none}
.tim-theme-switcher__menu button{
  width:100%;min-height:40px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#dfe5e1;
  display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;font-size:13px;font-weight:700
}
.tim-theme-switcher__menu button:hover,.tim-theme-switcher__menu button.is-active{background:rgba(255,255,255,.075);color:#fff}
.tim-theme-dot{width:12px;height:12px;border-radius:50%;border:1px solid rgba(255,255,255,.25);box-shadow:inset 0 0 0 2px rgba(0,0,0,.12)}
.tim-theme-dot--night{background:#17201c}.tim-theme-dot--day{background:#efe9da}.tim-theme-dot--modern{background:linear-gradient(135deg,#25283d,#4a3b6c)}

/* Night is the V6.4 design baseline. */
html[data-theme="night"]{color-scheme:dark}

/* ------------------------------- DAY -------------------------------- */
html[data-theme="day"]{
  color-scheme:light;
  --tim-bg:#f1eee5;--tim-bg-alt:#e8e3d6;--tim-panel:#fbfaf5;--tim-panel-2:#f0ece2;--tim-panel-3:#e4ddce;
  --tim-line:rgba(35,45,39,.10);--tim-line-strong:rgba(35,45,39,.20);--tim-text:#172019;--tim-muted:#59655d;--tim-soft:#35423a;
  --tim-green:#667b67;--tim-green-2:#7d987d;--tim-green-glow:#dfe8dc;--tim-gold:#95783e;--tim-gold-soft:#ad9154;
  --tim-shadow:0 20px 52px rgba(39,44,39,.12)
}
html[data-theme="day"] body{
  background:radial-gradient(circle at 14% -8%,rgba(112,137,113,.13),transparent 34%),radial-gradient(circle at 86% 0%,rgba(175,145,84,.12),transparent 30%),linear-gradient(180deg,#f5f2ea,#ebe6db);
  color:var(--tim-text)
}
html[data-theme="day"] .tim-v53-shell::before{background-image:linear-gradient(rgba(43,55,47,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(43,55,47,.035) 1px,transparent 1px);opacity:.55}
html[data-theme="day"] .tim-v53-shell::after{background:radial-gradient(circle,rgba(113,139,115,.10),transparent 68%)}
html[data-theme="day"] .tim-header{background:rgba(247,244,236,.91);border-bottom-color:rgba(37,45,40,.10)}
html[data-theme="day"] .tim-header__bar{color:#5a604f;border-bottom-color:rgba(37,45,40,.08)}
html[data-theme="day"] .tim-nav a,html[data-theme="day"] .tim-header__meta{color:#27342c}
html[data-theme="day"] .tim-mobile-panel{background:rgba(247,244,236,.98)}
html[data-theme="day"] .tim-mobile-panel a{background:rgba(31,42,34,.05);color:#202a23}
html[data-theme="day"] .tim-menu-toggle{background:rgba(31,42,34,.07);color:#233029}
html[data-theme="day"] .tim-menu-toggle span{background:#233029}
html[data-theme="day"] .tim-kicker{color:#5d684f}
html[data-theme="day"] .tim-title .tim-gradient,html[data-theme="day"] .tim-title em{background:none;color:#8c7545}
html[data-theme="day"] .tim-lede,html[data-theme="day"] .tim-copy,html[data-theme="day"] .tim-hero-subcopy,html[data-theme="day"] .tim-hero-note{color:var(--tim-muted)}
html[data-theme="day"] .tim-panel,html[data-theme="day"] .tim-card,html[data-theme="day"] .tim-cta-box,html[data-theme="day"] .tim-manual-cover,
html[data-theme="day"] .tim-product-card,html[data-theme="day"] .tim-surface,html[data-theme="day"] .tim-howto-card{
  background:linear-gradient(160deg,#fffef9,#eee9df);border-color:rgba(42,52,45,.14);box-shadow:var(--tim-shadow);color:var(--tim-text)
}
html[data-theme="day"] .tim-card--app,html[data-theme="day"] .tim-card--app.tim-card--2,html[data-theme="day"] .tim-card--app.tim-card--3,
html[data-theme="day"] .tim-card--app.tim-card--5,html[data-theme="day"] .tim-card--app.tim-card--6{background:linear-gradient(145deg,#fffdf8,#eee9df 75%,#e5ddcf);border-color:#d3cbbd}
html[data-theme="day"] .tim-card--closing{background:linear-gradient(120deg,#f4efe5,#e5ded0 55%,#ead9d9)!important;border-color:#c7b79b}
html[data-theme="day"] .tim-card--app .tim-card__media{background:linear-gradient(135deg,#e7e2d6,#f6f2e9)}
html[data-theme="day"] .tim-card__text,html[data-theme="day"] .tim-panel p,html[data-theme="day"] .tim-surface__copy span,html[data-theme="day"] .tim-howto-card span{color:#657168}
html[data-theme="day"] .tim-card__eyebrow,html[data-theme="day"] .tim-card--app .tim-card__eyebrow,html[data-theme="day"] .tim-howto-card strong{color:#765f35}
html[data-theme="day"] .tim-card--app .tim-card__link,html[data-theme="day"] .tim-link{color:#473a24}
html[data-theme="day"] .tim-subtiles a{background:rgba(255,255,255,.68);border-color:rgba(37,45,40,.12)}
html[data-theme="day"] .tim-subtiles a:hover{background:#fff;border-color:#a89061}
html[data-theme="day"] .tim-subtiles b{color:#4a3d26}html[data-theme="day"] .tim-subtiles small{color:#727c72}
html[data-theme="day"] .tim-value-strip{background:linear-gradient(180deg,#ebe7dd,#f5f2e9)}
html[data-theme="day"] .tim-value-kicker{color:#675a3d}
html[data-theme="day"] .tim-value-grid article{background:linear-gradient(145deg,#fffdf8,#e9e4d9);border-color:#d2cbbd}
html[data-theme="day"] .tim-value-grid strong{color:#6f5d36}html[data-theme="day"] .tim-value-grid p{color:#626e65}
html[data-theme="day"] .tim-footer{background:#ded8cb;border-top-color:rgba(35,45,39,.12)}
html[data-theme="day"] .tim-footer,html[data-theme="day"] .tim-footer a,html[data-theme="day"] .tim-footer-brand{color:#28322c}
html[data-theme="day"] .tim-btn--ghost{background:rgba(255,255,255,.5);color:#202b24;border-color:rgba(39,48,42,.22)}
html[data-theme="day"] .tim-btn--ghost:hover{background:#fff}
html[data-theme="day"] .tim-theme-switcher__trigger{background:rgba(32,42,35,.05);color:#243029}
html[data-theme="day"] .tim-theme-switcher__menu{background:rgba(248,245,238,.99);border-color:rgba(35,45,39,.18);box-shadow:0 18px 46px rgba(42,46,42,.16)}
html[data-theme="day"] .tim-theme-switcher__menu button{color:#263129}
html[data-theme="day"] .tim-theme-switcher__menu button:hover,html[data-theme="day"] .tim-theme-switcher__menu button.is-active{background:rgba(42,53,45,.07);color:#111914}

/* Keep the cinematic home hero intentionally dark in Day mode. */
html[data-theme="day"] .page-home .tim-home-hero-shell,html[data-theme="day"] .page-home .tim-home-stage{color:#f4f5f1}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title{color:#f4f5f1}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title .tim-gradient{color:#d2c3a0;background:none;-webkit-text-fill-color:#d2c3a0}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-hero-note{color:#ccd3cd}
html[data-theme="day"] .page-home .tim-home-hero-content,html[data-theme="day"] .page-home .tim-home-hero-metrics{color:#f3f4ef}
html[data-theme="day"] .page-home .tim-hero-stat{background:rgba(10,14,13,.52);border-color:rgba(255,255,255,.10)}
html[data-theme="day"] .page-home .tim-hero-stat span{color:#cbd3cd}

/* ----------------------------- MODERN ------------------------------- */
html[data-theme="modern"]{
  color-scheme:dark;
  --tim-bg:#0f1016;--tim-bg-alt:#1a1d2a;--tim-panel:#202334;--tim-panel-2:#292b41;--tim-panel-3:#383149;
  --tim-line:rgba(255,255,255,.09);--tim-line-strong:rgba(255,255,255,.17);--tim-text:#f5f5f7;--tim-muted:#b9bbc8;--tim-soft:#e0dfeb;
  --tim-green:#737d70;--tim-green-2:#979b80;--tim-gold:#c8a85b;--tim-gold-soft:#d8c997;--tim-shadow:0 24px 62px rgba(0,0,0,.38)
}
html[data-theme="modern"] body{
  background:radial-gradient(circle at 10% -12%,rgba(74,59,108,.45),transparent 34%),radial-gradient(circle at 88% 8%,rgba(37,40,61,.8),transparent 35%),linear-gradient(135deg,#0F1016 0%,#25283D 58%,#4A3B6C 140%);
  color:var(--tim-text)
}
html[data-theme="modern"] .tim-v53-shell::before{background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px)}
html[data-theme="modern"] .tim-v53-shell::after{background:radial-gradient(circle,rgba(120,91,159,.18),transparent 68%)}
html[data-theme="modern"] .tim-header{background:rgba(12,13,21,.78);border-bottom-color:rgba(255,255,255,.07)}
html[data-theme="modern"] .tim-mobile-panel{background:rgba(14,15,24,.98)}
html[data-theme="modern"] .tim-panel,html[data-theme="modern"] .tim-card,html[data-theme="modern"] .tim-cta-box,html[data-theme="modern"] .tim-manual-cover,
html[data-theme="modern"] .tim-product-card,html[data-theme="modern"] .tim-hero-panel{background:linear-gradient(145deg,#151721,#25283d 68%,#3b3155);border-color:rgba(218,201,151,.18)}
html[data-theme="modern"] .tim-card--app,html[data-theme="modern"] .tim-card--app.tim-card--2,html[data-theme="modern"] .tim-card--app.tim-card--3,
html[data-theme="modern"] .tim-card--app.tim-card--5,html[data-theme="modern"] .tim-card--app.tim-card--6{background:linear-gradient(145deg,#12131c,#25283d 64%,#4a3b6c 150%);border-color:#49445d}
html[data-theme="modern"] .tim-card--closing{background:linear-gradient(120deg,#171824,#2c2a42 58%,#422934)!important;border-color:#665b66}
html[data-theme="modern"] .tim-card--app .tim-card__media{background:linear-gradient(135deg,#10111a,#202338)}
html[data-theme="modern"] .tim-value-strip{background:linear-gradient(180deg,#11121a,#1e2030)}
html[data-theme="modern"] .tim-value-grid article{background:linear-gradient(145deg,#171824,#25283a);border-color:#44465b}
html[data-theme="modern"] .tim-howto-card{background:linear-gradient(145deg,#171824,#27283b);border-color:#45465a}
html[data-theme="modern"] .tim-subtiles a{background:#090a1190;border-color:#ffffff18}
html[data-theme="modern"] .tim-subtiles a:hover{background:#202133;border-color:#a29372}
html[data-theme="modern"] .tim-footer{background:#0e1018;border-top-color:rgba(255,255,255,.08)}
html[data-theme="modern"] .tim-theme-switcher__menu{background:rgba(14,15,24,.98)}

/* Small screens: appearance remains accessible without crowding the header. */
@media(max-width:760px){
  .tim-theme-switcher__text{display:none}
  .tim-theme-switcher__trigger{padding:0 9px;min-width:42px}
  .tim-theme-switcher__current{display:none}
  .tim-theme-switcher__menu{right:-2px;min-width:154px}
}
@media(max-width:420px){
  .tim-theme-switcher__trigger{min-height:36px}
}


/* =====================================================================
   TIM WEBSITE V6.4.4 — HEADER APPEARANCE REFINEMENT
   ---------------------------------------------------------------------
   Two visual refinements requested after V6.4.3 live-style review:
   1) give the TIM logo a premium dark rounded backing in Day mode so the
      white/khaki logo artwork keeps strong contrast;
   2) make the Appearance control easier to discover on desktop and mobile.
   These rules are additive and do not change the cinematic hero renderer.
   ===================================================================== */

/* Day theme: preserve the existing logo artwork but place it on a dark,
   softly rounded plaque rather than changing the logo colors themselves. */
html[data-theme="day"] .tim-header .tim-logo{
  padding:5px 12px 5px 10px;
  margin-left:-10px;
  border:1px solid rgba(210,195,160,.28);
  border-radius:16px;
  background:linear-gradient(145deg,#111714,#202b22 68%,#29372b);
  box-shadow:0 8px 22px rgba(28,35,30,.17),inset 0 1px 0 rgba(255,255,255,.045);
}
html[data-theme="day"] .tim-header .tim-logo:hover{
  border-color:rgba(210,195,160,.46);
  background:linear-gradient(145deg,#151c18,#253127 68%,#314033);
}
/* Keep the trademark optically attached to the logo inside the plaque. */
html[data-theme="day"] .tim-header .tim-logo .tim-trademark{color:#d2c3a0}

/* Appearance button: make it read as an intentional control rather than
   another quiet utility button. The current theme becomes a small badge. */
.tim-theme-switcher__trigger{
  min-height:42px;
  padding:0 12px;
  border:1px solid rgba(210,195,160,.42);
  border-radius:999px;
  background:linear-gradient(145deg,rgba(72,76,61,.72),rgba(24,29,25,.88));
  box-shadow:0 7px 20px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.055);
  color:#f5f3eb;
  gap:8px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.045em;
}
.tim-theme-switcher__trigger:hover,
.tim-theme-switcher__trigger:focus-visible{
  background:linear-gradient(145deg,rgba(92,91,67,.82),rgba(35,40,32,.94));
  border-color:rgba(232,211,154,.72);
  box-shadow:0 9px 24px rgba(0,0,0,.24),0 0 0 3px rgba(210,195,160,.09);
  outline:none;
}
.tim-theme-switcher__icon{
  width:17px;height:17px;border-width:1.7px;
  box-shadow:0 0 0 3px rgba(210,195,160,.08);
}
.tim-theme-switcher__text{font-size:11px;line-height:1}
.tim-theme-switcher__current{
  display:inline-flex;align-items:center;min-height:24px;padding:0 8px;
  border-radius:999px;background:rgba(210,195,160,.14);
  color:#eadba9;font-size:10px;line-height:1;letter-spacing:.04em
}
.tim-theme-switcher__chevron{
  width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translateY(-1px);opacity:.72;margin-left:1px
}
.tim-theme-switcher.is-open .tim-theme-switcher__chevron{transform:rotate(225deg) translate(-1px,-1px)}
.tim-theme-switcher__menu{top:calc(100% + 10px);min-width:186px}

/* Day mode keeps the Appearance control dark, which makes it much easier
   to locate against the light header and visually relates it to the logo plaque. */
html[data-theme="day"] .tim-theme-switcher__trigger{
  background:linear-gradient(145deg,#19211c,#29362b);
  border-color:rgba(132,109,61,.42);
  color:#f8f6ef;
  box-shadow:0 8px 22px rgba(37,44,39,.18),inset 0 1px 0 rgba(255,255,255,.055)
}
html[data-theme="day"] .tim-theme-switcher__trigger:hover,
html[data-theme="day"] .tim-theme-switcher__trigger:focus-visible{
  background:linear-gradient(145deg,#202a23,#354538);
  border-color:#a98e58
}
html[data-theme="day"] .tim-theme-switcher__current{background:rgba(210,195,160,.15);color:#ebdcad}

/* Modern mode receives a subtle violet edge while keeping the same control geometry. */
html[data-theme="modern"] .tim-theme-switcher__trigger{
  background:linear-gradient(145deg,#1a1c28,#302a45);
  border-color:rgba(216,201,151,.34)
}

/* On phone, keep a readable label instead of reducing the theme chooser to
   an unexplained half-moon icon. */
@media(max-width:760px){
  .tim-theme-switcher__trigger{min-width:auto;padding:0 11px;min-height:40px}
  .tim-theme-switcher__text{display:inline}
  .tim-theme-switcher__text::after{content:""}
  .tim-theme-switcher__current{display:none}
  .tim-theme-switcher__menu{right:-2px;min-width:166px}
  html[data-theme="day"] .tim-header .tim-logo{padding:4px 9px 4px 7px;margin-left:-7px;border-radius:14px}
}
@media(max-width:420px){
  .tim-theme-switcher__trigger{min-height:38px;padding:0 9px;gap:7px}
  .tim-theme-switcher__text{font-size:10px}
  .tim-theme-switcher__icon{width:15px;height:15px}
  .tim-theme-switcher__chevron{width:6px;height:6px}
}

/* =====================================================================
   TIM WEBSITE V6.4.5 — THEME CONTRAST + PREMIUM FINISH
   ---------------------------------------------------------------------
   Day-mode contrast audit plus cross-theme polish.  The purpose is to
   keep the approved Night design intact while making light surfaces read
   with the same confidence and hierarchy.  Image-overlay captions remain
   light because their local background is intentionally dark.
   ===================================================================== */

/* Slightly stronger surface hierarchy across all themes. */
.tim-panel,.tim-card,.tim-cta-box,.tim-manual-cover,.tim-product-card,.tim-hero-panel,.tim-howto-card{
  transition:border-color .22s ease,box-shadow .22s ease,transform .22s ease,background .22s ease;
}
.tim-title-sm{max-width:18ch}
.tim-section-heading .tim-lede{margin-top:4px}

/* ------------------------------- DAY -------------------------------- */
html[data-theme="day"]{
  /* Contrast-safe text tokens for warm light surfaces. */
  --tim-text:#18221b;
  --tim-muted:#435149;
  --tim-soft:#2d3a32;
  --tim-line:rgba(33,43,36,.14);
  --tim-line-strong:rgba(33,43,36,.28);
}
html[data-theme="day"] body{
  background:
    radial-gradient(circle at 12% -10%,rgba(101,126,104,.13),transparent 31%),
    radial-gradient(circle at 88% -2%,rgba(168,137,76,.11),transparent 27%),
    linear-gradient(180deg,#f7f4ec 0%,#eee9de 58%,#e8e2d6 100%);
}

/* Main reading text.  These selectors intentionally override older
   hard-coded gray values that were inherited from the dark theme. */
html[data-theme="day"] .tim-lede,
html[data-theme="day"] .tim-copy,
html[data-theme="day"] .tim-copy p,
html[data-theme="day"] .tim-hero-subcopy,
html[data-theme="day"] .tim-hero-note,
html[data-theme="day"] .tim-panel__body p,
html[data-theme="day"] .tim-card__text,
html[data-theme="day"] .tim-surface--text p,
html[data-theme="day"] .tim-footer-card p{
  color:#435149;
}
html[data-theme="day"] .tim-title,
html[data-theme="day"] .tim-title-sm,
html[data-theme="day"] .tim-card__title,
html[data-theme="day"] .tim-panel__body h3{
  color:#162019;
}

/* Warm gold is kept for labels, but darkened enough for a light field. */
html[data-theme="day"] .tim-kicker,
html[data-theme="day"] .tim-eyebrow,
html[data-theme="day"] .tim-card__eyebrow,
html[data-theme="day"] .tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-value-kicker{
  color:#725d31;
}
html[data-theme="day"] .tim-kicker:before{
  background:linear-gradient(90deg,#9a7c40,rgba(55,67,58,.26));
}

/* Light-theme chips are now deliberate ivory controls instead of washed
   out transparent outlines. */
html[data-theme="day"] .tim-hero-pill,
html[data-theme="day"] .tim-chip,
html[data-theme="day"] .tim-price-tag,
html[data-theme="day"] .tim-manual-meta span{
  background:linear-gradient(180deg,#fffdf8,#f1ece1);
  border-color:rgba(45,55,48,.28);
  color:#26332b;
  box-shadow:0 5px 14px rgba(43,49,44,.06),inset 0 1px 0 rgba(255,255,255,.88);
  font-weight:650;
}

/* Premium card/surface treatment on Day. */
html[data-theme="day"] .tim-panel,
html[data-theme="day"] .tim-card,
html[data-theme="day"] .tim-cta-box,
html[data-theme="day"] .tim-manual-cover,
html[data-theme="day"] .tim-product-card,
html[data-theme="day"] .tim-hero-panel,
html[data-theme="day"] .tim-howto-card{
  border-color:rgba(48,57,50,.16);
  box-shadow:0 18px 46px rgba(39,45,40,.10),0 2px 7px rgba(39,45,40,.05),inset 0 1px 0 rgba(255,255,255,.78);
}
html[data-theme="day"] .tim-panel:hover,
html[data-theme="day"] .tim-card:hover,
html[data-theme="day"] .tim-howto-card:hover{
  border-color:rgba(126,103,57,.33);
  box-shadow:0 22px 54px rgba(39,45,40,.13),0 3px 9px rgba(39,45,40,.06),inset 0 1px 0 rgba(255,255,255,.84);
}

/* The product-story images are dark photographic surfaces.  Their copy
   must stay light even while the surrounding page is in Day mode. */
html[data-theme="day"] .tim-surface:not(.tim-surface--text) .tim-surface__copy{
  background:linear-gradient(180deg,transparent 0%,rgba(5,8,7,.54) 38%,rgba(5,8,7,.96) 100%);
  text-shadow:0 1px 4px rgba(0,0,0,.72);
}
html[data-theme="day"] .tim-surface:not(.tim-surface--text) .tim-surface__copy strong{color:#fffdf8}
html[data-theme="day"] .tim-surface:not(.tim-surface--text) .tim-surface__copy span{color:#dce4de}
html[data-theme="day"] .tim-surface__badge{
  background:rgba(14,18,16,.86);
  border-color:rgba(234,221,188,.22);
  color:#eadfbd;
  box-shadow:0 4px 14px rgba(0,0,0,.18);
}

/* Text-only surface in the Shop hero remains light and readable. */
html[data-theme="day"] .tim-surface--text{
  background:linear-gradient(145deg,#fffdf7,#e9e3d7);
  border-color:rgba(45,55,48,.14);
}
html[data-theme="day"] .tim-surface--text p{color:#405047}

/* How-to placeholders gain stronger hierarchy before real video embeds. */
html[data-theme="day"] .tim-howto-card strong{color:#40351f}
html[data-theme="day"] .tim-howto-card span{color:#4f5d54}
html[data-theme="day"] .tim-howto-card em{color:#68736b}
html[data-theme="day"] .tim-howto-card:before{
  box-shadow:0 7px 18px rgba(84,28,36,.18);
}

/* Nested app tiles and secondary labels. */
html[data-theme="day"] .tim-subtiles small{color:#59665e}
html[data-theme="day"] .tim-value-grid span{color:#5f6a61}
html[data-theme="day"] .tim-value-grid p{color:#46534b}
html[data-theme="day"] .tim-footer-bottom{color:#59665e}

/* Ghost actions are intentionally clearer and more tactile in Day mode. */
html[data-theme="day"] .tim-btn--ghost{
  background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(242,238,229,.92));
  color:#17231b;
  border-color:rgba(38,48,41,.27);
  box-shadow:0 7px 18px rgba(39,45,40,.07);
}
html[data-theme="day"] .tim-btn--ghost:hover{
  background:#fff;
  border-color:rgba(112,91,48,.45);
  box-shadow:0 10px 24px rgba(39,45,40,.10);
}

/* Cinematic home hero is deliberately exempt from light-theme text rules. */
html[data-theme="day"] .page-home .tim-home-stage,
html[data-theme="day"] .page-home .tim-home-stage *{color:inherit}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title{color:#f4f5f1}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title .tim-gradient{color:#d2c3a0;-webkit-text-fill-color:#d2c3a0}
html[data-theme="day"] .page-home .tim-home-hero-copy .tim-hero-note{color:#d7ddd8}
html[data-theme="day"] .page-home .tim-hero-stat strong{color:#ddcda4}
html[data-theme="day"] .page-home .tim-hero-stat span{color:#d1d8d3}

/* ----------------------------- MODERN ------------------------------- */
/* Modern already had good contrast; these additions make it feel less flat
   without changing its requested blue/violet direction. */
html[data-theme="modern"] .tim-panel,
html[data-theme="modern"] .tim-card,
html[data-theme="modern"] .tim-cta-box,
html[data-theme="modern"] .tim-manual-cover,
html[data-theme="modern"] .tim-product-card,
html[data-theme="modern"] .tim-hero-panel,
html[data-theme="modern"] .tim-howto-card{
  box-shadow:0 20px 52px rgba(4,5,10,.28),inset 0 1px 0 rgba(255,255,255,.035);
}
html[data-theme="modern"] .tim-card__text,
html[data-theme="modern"] .tim-panel__body p,
html[data-theme="modern"] .tim-lede,
html[data-theme="modern"] .tim-hero-subcopy{color:#c6c8d4}
html[data-theme="modern"] .tim-howto-card span,
html[data-theme="modern"] .tim-subtiles small{color:#aeb2c2}

/* ------------------------------ NIGHT ------------------------------- */
/* Night remains the approved baseline; only tiny hierarchy refinements. */
html[data-theme="night"] .tim-card__text,
html[data-theme="night"] .tim-panel__body p{color:#c6d0ca}
html[data-theme="night"] .tim-howto-card span{color:#a6b0a7}

@media(max-width:760px){
  html[data-theme="day"] .tim-manual-meta span{font-size:13px}
}

/* ========================================================================== 
   V6.5.0 — RangeMotion Systems master-brand transition
   TIM remains the current product/app name; the website master brand is now
   RangeMotion Systems. This wordmark is intentionally typographic and can be
   replaced later by a finalized vector logo without changing site structure.
   ========================================================================== */
.rms-wordmark{
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  line-height:1;
  min-width:176px;
  color:#f3f0e5;
  text-decoration:none;
}
.rms-wordmark__main{
  display:flex;
  align-items:baseline;
  gap:.18em;
  font-size:1.18rem;
  font-weight:760;
  letter-spacing:.035em;
  white-space:nowrap;
}
.rms-wordmark__main strong{
  color:var(--tim-gold,#d2c3a0);
  font-weight:900;
}
.rms-wordmark__systems{
  margin-top:5px;
  font-size:.61rem;
  font-weight:800;
  letter-spacing:.34em;
  color:#aeb8b1;
  white-space:nowrap;
}
.tim-logo{
  min-width:188px;
  min-height:54px;
  padding:0;
  border-radius:0;
}
.tim-logo:hover .rms-wordmark__main strong{color:#e1d5b6}
.tim-footer-brand .rms-wordmark--footer{margin-bottom:18px}
.tim-footer-brand .rms-wordmark__main{font-size:1.35rem}
.tim-footer-brand .rms-wordmark__systems{font-size:.64rem}

html[data-theme="day"] .rms-wordmark{color:#18231d}
html[data-theme="day"] .rms-wordmark__systems{color:#59645d}
html[data-theme="day"] .tim-header .tim-logo{
  background:linear-gradient(145deg,#17201c,#26342c);
  border:1px solid rgba(206,194,160,.40);
  box-shadow:0 10px 26px rgba(25,32,28,.16);
  padding:8px 14px;
  margin-left:-7px;
  border-radius:16px;
}
html[data-theme="day"] .tim-header .tim-logo .rms-wordmark{color:#f8f5ea}
html[data-theme="day"] .tim-header .tim-logo .rms-wordmark__systems{color:#c8d0c9}
html[data-theme="day"] .tim-header .tim-logo:hover{
  border-color:rgba(206,194,160,.70);
  box-shadow:0 13px 30px rgba(25,32,28,.20);
}
html[data-theme="modern"] .rms-wordmark__systems{color:#c3c5d4}

@media(max-width:920px){
  .tim-logo{min-width:166px;min-height:50px}
  .rms-wordmark{min-width:158px}
  .rms-wordmark__main{font-size:1.05rem}
  .rms-wordmark__systems{font-size:.57rem;letter-spacing:.29em}
}
@media(max-width:540px){
  .tim-logo{min-width:148px}
  .rms-wordmark{min-width:142px}
  .rms-wordmark__main{font-size:.94rem}
  .rms-wordmark__systems{font-size:.53rem;letter-spacing:.24em}
  html[data-theme="day"] .tim-header .tim-logo{padding:7px 10px;margin-left:-4px;border-radius:14px}
}


/* ==========================================================================
   V6.5.1 — Final RangeMotion Systems logo integration
   Uses the selected RangeMotion target/motion lockup as the master brand mark.
   A dark-background variant keeps the original gold/red identity while making
   the neutral black portions readable in Night/Modern. Day uses the original
   transparent artwork. The same mark is reused in the footer and the emblem
   supplies the browser favicon.
   ========================================================================== */
.rms-logo-link{
  min-width:248px;
  min-height:60px;
  display:flex;
  align-items:center;
  padding:0;
  border-radius:0;
}
.rms-logo-lockup{
  display:block;
  position:relative;
  width:248px;
  height:66px;
}
.rms-logo-image{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:left center;
  transition:opacity .2s ease, transform .2s ease, filter .2s ease;
}
.rms-logo-image--day{display:none}
.rms-logo-link:hover .rms-logo-image{
  transform:translateY(-1px);
  filter:drop-shadow(0 7px 14px rgba(0,0,0,.22));
}
.rms-footer-logo{
  position:relative;
  width:min(100%,310px);
  height:82px;
  margin-bottom:18px;
}
.rms-footer-logo .rms-logo-image{object-position:left center}

html[data-theme="day"] .rms-logo-image--night{display:none}
html[data-theme="day"] .rms-logo-image--day{display:block}
html[data-theme="day"] .tim-header .rms-logo-link{
  background:linear-gradient(145deg,#17201c,#26342c);
  border:1px solid rgba(206,194,160,.40);
  box-shadow:0 10px 26px rgba(25,32,28,.16);
  padding:6px 11px;
  margin-left:-7px;
  border-radius:18px;
}
html[data-theme="day"] .tim-header .rms-logo-link .rms-logo-image--day{display:none}
html[data-theme="day"] .tim-header .rms-logo-link .rms-logo-image--night{display:block}
html[data-theme="day"] .tim-header .rms-logo-link:hover{
  border-color:rgba(206,194,160,.72);
  box-shadow:0 13px 30px rgba(25,32,28,.20);
}
html[data-theme="day"] .tim-footer .rms-logo-image--night{display:none}
html[data-theme="day"] .tim-footer .rms-logo-image--day{display:block}

@media(max-width:1080px){
  .rms-logo-link{min-width:218px}
  .rms-logo-lockup{width:218px;height:58px}
}
@media(max-width:920px){
  .rms-logo-link{min-width:205px;min-height:54px}
  .rms-logo-lockup{width:205px;height:55px}
}
@media(max-width:540px){
  .rms-logo-link{min-width:174px;min-height:48px}
  .rms-logo-lockup{width:174px;height:47px}
  html[data-theme="day"] .tim-header .rms-logo-link{
    padding:5px 8px;
    margin-left:-4px;
    border-radius:14px;
  }
}


/* ==========================================================================\n   V6.5.2 — RMS naming + matched header/footer logo sizing\n   ========================================================================== */
.tim-header__inner{min-height:104px}
.tim-header .rms-logo-link{
  min-width:310px;
  min-height:82px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
}
.tim-header .rms-logo-lockup{
  width:310px;
  height:82px;
}
.tim-footer .rms-footer-logo{
  width:min(100%,310px);
  height:82px;
}
@media(max-width:1180px){
  .tim-header .rms-logo-link{min-width:260px;min-height:70px}
  .tim-header .rms-logo-lockup{width:260px;height:70px}
}
@media(max-width:980px){
  .tim-header__inner{min-height:88px}
  .tim-header .rms-logo-link{min-width:235px;min-height:62px}
  .tim-header .rms-logo-lockup{width:235px;height:62px}
}
@media(max-width:620px){
  .tim-header__inner{min-height:78px}
  .tim-header .rms-logo-link{min-width:190px;min-height:52px}
  .tim-header .rms-logo-lockup{width:190px;height:52px}
  .tim-footer .rms-footer-logo{width:min(100%,270px);height:72px}
}

/* ========================================================================== 
   V6.5.3 — mobile/day readability + RMS header polish
   --------------------------------------------------------------------------
   - make the actual RMS artwork fill its header lockup (legacy TIM img width
     rules must not shrink it);
   - use the same light-surface RMS logo treatment in the Day header as footer;
   - keep Appearance + hamburger menu visible together on phones;
   - correct Day-theme contrast on mobile hero copy, image-overlay app tiles,
     bullet lists, nested tiles, and Challenge Friend copy;
   - remove the numeric scene counter from the cinematic animation UI.
   ========================================================================== */

/* The old .tim-logo img rules are intentionally overridden here. */
.tim-header .rms-logo-link .rms-logo-image,
.tim-footer .rms-footer-logo .rms-logo-image{
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain;
  object-position:left center;
}

/* Day header now uses the same original black/gold/red logo artwork as the
   footer instead of putting the light-on-dark variant inside a large plaque. */
html[data-theme="day"] .tim-header .rms-logo-link{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
  margin-left:0;
  border-radius:0;
}
html[data-theme="day"] .tim-header .rms-logo-link:hover{
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}
html[data-theme="day"] .tim-header .rms-logo-link .rms-logo-image--night{display:none}
html[data-theme="day"] .tim-header .rms-logo-link .rms-logo-image--day{display:block}

/* Cinematic scene label remains, but the 01/04 style counter is removed. */
.tim-scene-story [data-scene-number]{display:none !important}
.tim-scene-story{gap:0}

/* Day theme: image-backed bento cards remain locally dark, so their overlay
   copy must stay light instead of inheriting page-level dark text colors. */
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__link span{
  color:#f7f5ee;
  text-shadow:0 1px 4px rgba(0,0,0,.72);
}
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__eyebrow{
  color:#ead8a8;
  text-shadow:0 1px 4px rgba(0,0,0,.72);
}
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__media:after,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__media:after,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__media:after,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__media:after{
  background:linear-gradient(180deg,rgba(7,10,9,.05) 0%,rgba(7,10,9,.35) 46%,rgba(7,10,9,.95) 100%);
}

/* Challenge Friend and other light Day panels: fixed dark-theme bullet color
   was too pale on ivory cards. */
html[data-theme="day"] .tim-bullet{color:#35443b}
html[data-theme="day"] .tim-bullet:before{box-shadow:0 0 0 1px rgba(58,69,61,.10)}

/* Nested child tiles need stronger small-copy contrast on a light surface. */
html[data-theme="day"] .tim-subtiles small{color:#46564c;font-weight:600}
html[data-theme="day"] .tim-subtiles b{color:#2f3b33}

/* Mobile home layout places the copy below the dark cinematic stage on the
   light Day page, so use dark text there rather than desktop cinematic white. */
@media(max-width:760px){
  html[data-theme="day"] .page-home .tim-home-hero-content{
    color:#18221b;
    background:linear-gradient(180deg,rgba(250,248,241,.98),rgba(241,237,227,.98));
  }
  html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title{color:#18221b}
  html[data-theme="day"] .page-home .tim-home-hero-copy .tim-title .tim-gradient{
    color:#8a7040;
    -webkit-text-fill-color:#8a7040;
  }
  html[data-theme="day"] .page-home .tim-home-hero-copy .tim-hero-note{
    color:#3f5046;
    font-weight:500;
  }
  html[data-theme="day"] .page-home .tim-home-hero-copy .tim-eyebrow{color:#67552f}
  html[data-theme="day"] .page-home .tim-home-hero-side .tim-mini-card{
    background:linear-gradient(180deg,#fffdf8,#ece7dc);
    border-color:rgba(42,52,45,.16);
    box-shadow:0 10px 26px rgba(39,45,40,.08);
    color:#1c281f;
  }
  html[data-theme="day"] .page-home .tim-home-hero-side .tim-mini-card p{color:#45554b}
  html[data-theme="day"] .page-home .tim-home-hero-metrics{
    background:linear-gradient(180deg,#f1ede3,#e9e4d8);
  }
  html[data-theme="day"] .page-home .tim-hero-stat{
    background:rgba(255,253,248,.78);
    border-color:rgba(42,52,45,.16);
  }
  html[data-theme="day"] .page-home .tim-hero-stat strong{color:#735d31}
  html[data-theme="day"] .page-home .tim-hero-stat span{color:#435149}
}

/* Phone header: make enough room for logo, Appearance, and hamburger at once. */
@media(max-width:920px){
  .tim-header__inner{gap:10px}
  .tim-header__right{margin-left:auto;gap:8px;flex-shrink:0}
  .tim-menu-toggle{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    flex-direction:column;
    flex:0 0 44px;
    width:44px;
    height:44px;
    padding:8px;
    position:relative;
    z-index:110;
  }
  .tim-header .rms-logo-link{min-width:178px;min-height:48px;flex:0 1 178px}
  .tim-header .rms-logo-lockup{width:178px;height:48px}
}
@media(max-width:620px){
  .tim-header__inner{gap:7px}
  .tim-header .rms-logo-link{min-width:166px;min-height:45px;flex-basis:166px}
  .tim-header .rms-logo-lockup{width:166px;height:45px}
  .tim-theme-switcher__trigger{padding:0 9px;gap:6px}
  .tim-theme-switcher__text{font-size:10px}
}
@media(max-width:390px){
  .tim-header .rms-logo-link{min-width:142px;min-height:40px;flex-basis:142px}
  .tim-header .rms-logo-lockup{width:142px;height:40px}
  .tim-theme-switcher__text{display:none}
  .tim-theme-switcher__trigger{min-width:40px;padding:0 8px}
  .tim-theme-switcher__chevron{display:none}
}

/* ========================================================================== 
   V6.5.4 — mobile motion-card proportions + Day contrast audit
   --------------------------------------------------------------------------
   - force the home bento grid to one true full-width column on phones;
   - stack the portrait motion video above its copy so text never collapses
     into a narrow column beside the video;
   - keep the portrait video centered in a controlled media stage;
   - strengthen Day-theme secondary copy globally while preserving the warm,
     premium ivory/gold hierarchy.
   ========================================================================== */

/* Stronger Day secondary-copy tokens. These are intentionally darker than the
   previous gray-green values to remain readable outdoors and on phone displays. */
html[data-theme="day"]{
  --tim-muted:#46544b;
  --tim-soft:#2f3d35;
}
html[data-theme="day"] .tim-lede,
html[data-theme="day"] .tim-copy,
html[data-theme="day"] .tim-hero-subcopy,
html[data-theme="day"] .tim-hero-note,
html[data-theme="day"] .tim-card__text,
html[data-theme="day"] .tim-panel p,
html[data-theme="day"] .tim-surface__copy span,
html[data-theme="day"] .tim-howto-card span,
html[data-theme="day"] .tim-footer-card p{
  color:#46544b;
}
html[data-theme="day"] .tim-panel__body p,
html[data-theme="day"] .tim-friend-feature .tim-panel__body p{
  color:#3d4b43;
  font-weight:500;
}
html[data-theme="day"] .tim-subtiles small{
  color:#425148;
  font-weight:650;
}
html[data-theme="day"] .tim-value-grid p{color:#46544b}
html[data-theme="day"] .tim-howto-card em{color:#536158}

/* V6.5.3 treated the first four app cards as image overlays. In the current
   premium layout their copy sits on a separate card surface below/beside the
   media, so Day mode must use dark copy on that light surface. */
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__title,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__title{color:#18221b;text-shadow:none}
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__text,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__text{color:#3d4b43;text-shadow:none}
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__link,
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__link span,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__link span{color:#493a20;text-shadow:none}
html[data-theme="day"] .tim-card--1.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--2.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--3.tim-card--app .tim-card__eyebrow,
html[data-theme="day"] .tim-card--4.tim-card--app .tim-card__eyebrow{color:#70592e;text-shadow:none}

/* Phone/tablet home bento: use one real column. The portrait demo video gets
   its own full-width stage and the copy follows underneath. This avoids the
   narrow 40/60-looking tile seen on both small and large phones. */
@media(max-width:760px){
  .page-home .tim-bento--app{
    display:grid;
    grid-template-columns:minmax(0,1fr) !important;
    width:100%;
  }
  .page-home .tim-bento--app > .tim-card--app{
    grid-column:1 !important;
    width:100%;
    min-width:0;
    max-width:none;
  }
  .page-home .tim-card--4.tim-card--app.tim-card--motion{
    display:flex !important;
    flex-direction:column;
    grid-template-columns:none !important;
  }
  .page-home .tim-card--motion .tim-card__media{
    position:relative;
    width:100%;
    height:clamp(330px,82vw,430px) !important;
    min-height:0 !important;
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    background:linear-gradient(145deg,#0a0d0b,#151a16);
  }
  .page-home .tim-card--motion .tim-card__media video{
    width:100%;
    height:100%;
    padding:0;
    object-fit:contain;
    object-position:center center;
    background:#090b09;
  }
  .page-home .tim-card--motion .tim-card__content{
    position:relative;
    width:100%;
    min-width:0;
    padding:22px 20px 24px;
  }
  .page-home .tim-card--motion .tim-card__title,
  .page-home .tim-card--motion .tim-card__text{
    max-width:none;
  }
}

@media(max-width:420px){
  .page-home .tim-card--motion .tim-card__media{height:340px !important}
}


/* ==========================================================================\n   V6.5.7 — Workflow tile image alignment polish\n   Center the visual subject in all four "How it works" cards while keeping\n   the explanatory copy left-aligned. Portrait app screenshots get a narrower\n   presentation so they feel intentional instead of pinned to one side.\n   ========================================================================== */
.page-what #how-it-works .tim-media-frame--workflow{
  width:100%;
  height:320px;
  max-height:none;
  aspect-ratio:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:16px;
  box-sizing:border-box;
  background:linear-gradient(145deg,#0d120f,#182019);
}
.page-what #how-it-works .tim-media-frame--workflow img{
  display:block;
  width:auto;
  height:auto;
  max-width:92%;
  max-height:100%;
  margin:auto;
  object-fit:contain;
  object-position:center center;
}
.page-what #how-it-works .tim-media-frame--workflow.tim-media-frame--phone img{
  max-width:58%;
  max-height:100%;
}
html[data-theme="day"] .page-what #how-it-works .tim-media-frame--workflow{
  background:linear-gradient(145deg,#e9e4d9,#f7f3ea);
}
html[data-theme="modern"] .page-what #how-it-works .tim-media-frame--workflow{
  background:linear-gradient(145deg,#10111a,#202338);
}
@media(max-width:720px){
  .page-what #how-it-works .tim-media-frame--workflow{
    height:280px;
    padding:14px;
  }
  .page-what #how-it-works .tim-media-frame--workflow.tim-media-frame--phone img{
    max-width:68%;
  }
}


/* ==========================================================================
   V6.5.8 — centered media stages + public version-label cleanup
   --------------------------------------------------------------------------
   The previous phone-frame rule centered the image inside its own narrow
   portrait frame, but the portrait frame itself could still occupy the left
   side of a wide card. These overrides make the media STAGE full-width and
   center the portrait asset inside that stage.
   ========================================================================== */

/* RMS App capability cards: full-width media stage, centered portrait asset. */
.page-app #control .tim-panel .tim-media-frame--phone{
  width:100%;
  height:430px;
  max-height:none;
  aspect-ratio:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:0;
  box-sizing:border-box;
  background:#0b0f0e;
}
.page-app #control .tim-panel .tim-media-frame--phone img{
  display:block;
  width:auto;
  height:100%;
  max-width:100%;
  max-height:100%;
  margin:0 auto;
  object-fit:contain;
  object-position:center center;
}

/* Challenge Friend showcase: same centered-stage treatment. */
.page-app #challenge-friend .tim-media-frame--phone{
  width:100%;
  height:560px;
  min-height:0;
  max-height:none;
  aspect-ratio:auto;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  padding:0;
  box-sizing:border-box;
  background:#0b0f0e;
}
.page-app #challenge-friend .tim-media-frame--phone img{
  display:block;
  width:auto;
  height:100%;
  max-width:100%;
  max-height:100%;
  margin:0 auto;
  object-fit:contain;
  object-position:center center;
}

/* Keep the centered media stage intentional in Day and Modern themes. */
html[data-theme="day"] .page-app #control .tim-media-frame--phone,
html[data-theme="day"] .page-app #challenge-friend .tim-media-frame--phone{
  background:linear-gradient(145deg,#e9e4d9,#f7f3ea);
}
html[data-theme="modern"] .page-app #control .tim-media-frame--phone,
html[data-theme="modern"] .page-app #challenge-friend .tim-media-frame--phone{
  background:linear-gradient(145deg,#10111a,#202338);
}

/* Tablet/mobile: keep portrait screenshots centered without creating giant
   empty stages. */
@media(max-width:900px){
  .page-app #control .tim-panel .tim-media-frame--phone{height:400px}
  .page-app #challenge-friend .tim-media-frame--phone{height:500px}
}
@media(max-width:620px){
  .page-app #control .tim-panel .tim-media-frame--phone{height:360px}
  .page-app #challenge-friend .tim-media-frame--phone{height:440px}
}
