/* Turban Elite Fitness — front-end styles */
:root {
  --tef-ink: #0c0d0f;
  --tef-ink-soft: #15171b;
  --tef-card: #1c1f24;
  --tef-line: rgba(255,255,255,.13);
  --tef-paper: #f2f1ec;
  --tef-white: #fff;
  --tef-muted: #a7abb3;
  --tef-accent: #d7ff3c;
  --tef-accent-2: #ff4f24;
  --tef-display: "Arial Black", Impact, Haettenschweiler, sans-serif;
  --tef-body: Inter, Arial, Helvetica, sans-serif;
  --tef-container: 1240px;
  --tef-radius: 2px;
  --tef-shadow: 0 22px 60px rgba(0,0,0,.22);
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--tef-ink); color:var(--tef-white); font-family:var(--tef-body); font-size:16px; line-height:1.65; -webkit-font-smoothing:antialiased; }
body.menu-open { overflow:hidden; }
img { max-width:100%; height:auto; display:block; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button { cursor:pointer; }
::selection { background:var(--tef-accent); color:var(--tef-ink); }
.tef-container { width:min(calc(100% - 40px), var(--tef-container)); margin-inline:auto; }
.section { padding:110px 0; position:relative; }
.eyebrow { margin:0 0 18px; color:var(--tef-accent); font-size:.75rem; font-weight:900; letter-spacing:.18em; text-transform:uppercase; display:flex; gap:12px; align-items:center; }
.eyebrow span { width:34px; height:2px; background:currentColor; }
.eyebrow.dark { color:#4a5300; }
h1,h2,h3,h4,h5,h6 { margin:0; font-family:var(--tef-display); font-weight:900; line-height:.98; letter-spacing:-.035em; text-transform:uppercase; }
h1 { font-size:clamp(4rem,8.2vw,8rem); }
h2 { font-size:clamp(2.7rem,5.2vw,5.4rem); }
h3 { font-size:1.65rem; }
p { margin:0 0 1rem; }
.tef-button { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:56px; padding:0 26px; border:1px solid var(--tef-accent); background:var(--tef-accent); color:var(--tef-ink); font-size:.78rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; transition:.25s ease; }
.tef-button:hover,.tef-button:focus-visible { background:var(--tef-white); border-color:var(--tef-white); transform:translateY(-2px); }
.tef-button-ghost { background:transparent; color:var(--tef-white); border-color:rgba(255,255,255,.45); }
.tef-button-ghost:hover { color:var(--tef-ink); }
.tef-button-dark { background:var(--tef-ink); border-color:var(--tef-ink); color:var(--tef-white); }
.tef-button-dark:hover { background:#30343a; border-color:#30343a; color:var(--tef-white); }
.tef-button-small { min-height:44px; padding-inline:19px; font-size:.7rem; }
.text-link { display:inline-flex; gap:10px; align-items:center; margin-top:14px; color:var(--tef-ink); font-size:.76rem; font-weight:900; letter-spacing:.08em; text-transform:uppercase; border-bottom:1px solid currentColor; padding-bottom:4px; }
.text-link.light { color:var(--tef-white); }
.text-link:hover span { transform:translate(3px,-3px); }
.text-link span { transition:.2s; }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .7s ease,transform .7s ease; }
.reveal-delay { transition-delay:.14s; }
.reveal.is-visible { opacity:1; transform:none; }

/* Header */
.site-header { position:fixed; inset:0 0 auto; z-index:1000; border-bottom:1px solid transparent; transition:.25s; }
.site-header.is-scrolled { background:rgba(12,13,15,.94); backdrop-filter:blur(18px); border-bottom-color:var(--tef-line); }
.header-inner { height:86px; display:grid; grid-template-columns:210px 1fr auto; align-items:center; gap:34px; }
.site-branding .custom-logo-link { display:inline-flex; align-items:center; }
.site-branding img { width:auto; max-width:172px; max-height:62px; object-fit:contain; }
.main-navigation { justify-self:center; }
.main-navigation ul { display:flex; align-items:center; gap:32px; padding:0; margin:0; list-style:none; }
.main-navigation li { position:relative; }
.main-navigation a { display:block; padding:31px 0; font-size:.72rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.main-navigation a:hover,.main-navigation .current-menu-item>a { color:var(--tef-accent); }
.main-navigation ul ul { position:absolute; top:78%; left:-20px; min-width:210px; display:block; padding:12px 0; background:var(--tef-ink-soft); border:1px solid var(--tef-line); box-shadow:var(--tef-shadow); opacity:0; visibility:hidden; transform:translateY(10px); transition:.2s; }
.main-navigation ul ul a { padding:10px 18px; }
.main-navigation li:hover>ul,.main-navigation li:focus-within>ul { opacity:1; visibility:visible; transform:none; }
.menu-toggle { display:none; width:46px; height:44px; padding:11px; border:1px solid var(--tef-line); background:transparent; }
.menu-toggle span:not(.screen-reader-text) { display:block; height:2px; margin:5px 0; background:#fff; }

/* Hero */
.hero { min-height:820px; padding-top:86px; position:relative; display:flex; flex-direction:column; justify-content:center; overflow:hidden; background-image:linear-gradient(90deg,rgba(12,13,15,.98) 0%,rgba(12,13,15,.78) 47%,rgba(12,13,15,.18) 100%),var(--tef-hero-image,url('../images/hero-abstract.svg')); background-size:cover; background-position:center; }
.hero::after { content:""; position:absolute; width:460px; height:460px; right:-160px; top:120px; border:90px solid rgba(215,255,60,.08); border-radius:50%; }
.hero-grid-overlay { position:absolute; inset:0; opacity:.11; background-image:linear-gradient(rgba(255,255,255,.3) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.3) 1px,transparent 1px); background-size:80px 80px; mask-image:linear-gradient(to right,#000,transparent 70%); }
.hero-inner { position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(380px,.92fr); gap:50px; align-items:center; padding:90px 0 100px; }
.hero-copy { max-width:850px; }
.hero-copy h1 { max-width:900px; }
.hero-copy h1::first-line { color:var(--tef-white); }
.hero-description { max-width:640px; margin:26px 0 32px; color:#c8cbd1; font-size:1.08rem; }
.hero-actions { display:flex; gap:14px; flex-wrap:wrap; }
.hero-visual { min-height:500px; position:relative; display:flex; align-items:center; justify-content:center; }
.hero-brand-stamp { width:min(86%,430px); aspect-ratio:1; border-radius:50%; display:flex; align-items:center; justify-content:center; padding:82px; background:radial-gradient(circle at 45% 45%,#2b2f35,#121418 65%); border:1px solid rgba(255,255,255,.18); box-shadow:0 0 0 30px rgba(255,255,255,.03),0 0 0 60px rgba(255,255,255,.025),var(--tef-shadow); transform:rotate(-7deg); }
.hero-brand-stamp::before { content:""; position:absolute; inset:30px; border:1px dashed rgba(215,255,60,.7); border-radius:50%; animation:spin 26s linear infinite; }
.hero-brand-stamp img { max-width:100%; max-height:220px; object-fit:contain; position:relative; z-index:2; }
.hero-stat { position:absolute; width:150px; padding:16px; background:rgba(12,13,15,.9); border:1px solid var(--tef-line); box-shadow:var(--tef-shadow); }
.hero-stat strong { display:block; color:var(--tef-accent); font:900 1.8rem/1 var(--tef-display); }
.hero-stat span { display:block; margin-top:7px; color:#c7cad0; font-size:.68rem; letter-spacing:.08em; text-transform:uppercase; }
.hero-stat-one { left:0; bottom:82px; }
.hero-stat-two { right:0; top:84px; }
.hero-bottom { position:absolute; z-index:3; bottom:0; left:50%; transform:translateX(-50%); display:flex; border-top:1px solid var(--tef-line); }
.hero-bottom div { display:flex; gap:16px; align-items:center; padding:18px 30px 18px 0; margin-right:30px; border-right:1px solid var(--tef-line); }
.hero-bottom div:last-child { border:0; }
.hero-bottom span { color:var(--tef-accent); font-size:.65rem; font-weight:900; letter-spacing:.12em; }
.hero-bottom a { font-size:.78rem; }
@keyframes spin { to { transform:rotate(360deg); } }

/* Ticker */
.ticker { overflow:hidden; background:var(--tef-accent); color:var(--tef-ink); border-block:1px solid #a9c928; }
.ticker-track { display:flex; width:max-content; align-items:center; gap:28px; padding:15px 0; animation:ticker 24s linear infinite; }
.ticker span { font:900 1.25rem/1 var(--tef-display); letter-spacing:.02em; }
.ticker b { color:var(--tef-accent-2); }
@keyframes ticker { to { transform:translateX(-50%); } }

/* About */
.about-section { background:var(--tef-paper); color:var(--tef-ink); }
.about-grid { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
.section-heading h2 { max-width:820px; }
.section-heading.centered { text-align:center; max-width:920px; }
.section-heading.centered .eyebrow { justify-content:center; }
.section-heading.centered>p:last-child { color:var(--tef-muted); margin:20px auto 0; max-width:560px; }
.about-copy .lead { font-size:1.5rem; line-height:1.45; font-weight:700; }
.about-copy>p:not(.lead) { color:#60636a; }
.metrics-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:90px; border:1px solid #d5d3ca; }
.metrics-grid div { min-height:170px; padding:32px; border-right:1px solid #d5d3ca; display:flex; flex-direction:column; justify-content:space-between; }
.metrics-grid div:last-child { border:0; }
.metrics-grid strong { font:900 clamp(2.7rem,4vw,4.6rem)/1 var(--tef-display); }
.metrics-grid span { color:#5d6065; font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }

/* Programs */
.programs-section { background:var(--tef-ink); }
.program-grid { margin-top:60px; display:grid; grid-template-columns:repeat(4,1fr); border:1px solid var(--tef-line); }
.program-card { min-height:430px; padding:30px; display:flex; flex-direction:column; border-right:1px solid var(--tef-line); position:relative; overflow:hidden; transition:.3s; }
.program-card:last-child { border:0; }
.program-card::before { content:""; position:absolute; inset:auto -100px -160px auto; width:260px; height:260px; border:1px solid rgba(255,255,255,.1); border-radius:50%; transition:.35s; }
.program-card:hover { background:#22262c; transform:translateY(-8px); }
.program-card:hover::before { border-color:var(--tef-accent); transform:scale(1.15); }
.program-card.featured { background:var(--tef-accent); color:var(--tef-ink); }
.program-card.featured p { color:#343a08; }
.program-number { font-size:.7rem; font-weight:900; letter-spacing:.12em; opacity:.7; }
.program-icon { width:72px; height:72px; margin:38px 0 auto; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font:900 2.1rem/1 var(--tef-display); }
.program-card h3 { margin-top:34px; }
.program-card p { margin:16px 0 25px; color:var(--tef-muted); font-size:.9rem; }
.program-card>a { width:42px; height:42px; margin-top:auto; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-size:1.25rem; }

/* Method */
.method-section { background:var(--tef-accent); color:var(--tef-ink); overflow:hidden; }
.method-grid { display:grid; grid-template-columns:.95fr 1.05fr; gap:100px; align-items:center; }
.method-visual { min-height:620px; background:linear-gradient(150deg,#121418,#2b3037); position:relative; overflow:hidden; box-shadow:var(--tef-shadow); }
.method-visual::before { content:"ELITE"; position:absolute; left:-20px; bottom:-25px; color:rgba(255,255,255,.08); font:900 12rem/1 var(--tef-display); }
.method-ring { position:absolute; width:360px; height:360px; border:42px solid var(--tef-accent-2); border-radius:50%; top:65px; left:50%; transform:translateX(-50%) rotate(-15deg); box-shadow:0 0 0 24px rgba(255,255,255,.06); }
.method-ring span { position:absolute; top:50%; left:50%; transform:translate(-50%,-50%) rotate(15deg); color:#fff; font:900 2.5rem/1 var(--tef-display); letter-spacing:.08em; }
.method-quote { position:absolute; left:38px; right:38px; bottom:38px; color:#fff; font:900 1.6rem/1.1 var(--tef-display); text-transform:uppercase; }
.method-copy h2 { max-width:690px; margin-bottom:40px; }
.method-step { display:grid; grid-template-columns:62px 1fr; gap:24px; padding:25px 0; border-top:1px solid rgba(12,13,15,.22); }
.method-step:last-child { border-bottom:1px solid rgba(12,13,15,.22); }
.method-step>strong { font:900 1.3rem/1 var(--tef-display); color:#4c5600; }
.method-step h3 { font-size:1.35rem; }
.method-step p { color:#394000; margin:8px 0 0; }

/* Schedule */
.schedule-section { background:#111317; }
.schedule-header { display:grid; grid-template-columns:1fr 380px; gap:60px; align-items:end; }
.schedule-header>p { color:var(--tef-muted); }
.schedule-wrap { margin-top:60px; border:1px solid var(--tef-line); }
.schedule-days { display:grid; grid-template-columns:repeat(6,1fr); border-bottom:1px solid var(--tef-line); }
.schedule-days button { min-height:65px; border:0; border-right:1px solid var(--tef-line); background:transparent; color:var(--tef-muted); font-size:.75rem; font-weight:900; letter-spacing:.1em; }
.schedule-days button:last-child { border:0; }
.schedule-days button.active { background:var(--tef-accent); color:var(--tef-ink); }
.schedule-panel { display:none; }
.schedule-panel.active { display:grid; grid-template-columns:1fr 1fr; }
.schedule-panel>div { min-height:180px; padding:35px; display:grid; grid-template-columns:130px 1fr auto; gap:25px; align-items:center; border-right:1px solid var(--tef-line); }
.schedule-panel>div:last-child { border:0; }
.schedule-panel time { color:var(--tef-accent); font:900 1.25rem/1 var(--tef-display); }
.schedule-panel h3 { font-size:1.35rem; }
.schedule-panel span { color:var(--tef-muted); font-size:.7rem; font-weight:800; letter-spacing:.1em; }

/* Testimonial */
.testimonial-section { background:var(--tef-paper); color:var(--tef-ink); }
.testimonial-grid { display:grid; grid-template-columns:.85fr 1.15fr; gap:90px; align-items:center; }
.testimonial-card { padding:55px; background:var(--tef-white); box-shadow:0 18px 70px rgba(0,0,0,.08); position:relative; }
.quote-mark { position:absolute; right:36px; top:10px; color:var(--tef-accent); font:900 8rem/1 var(--tef-display); }
.testimonial-card blockquote { margin:0 0 35px; max-width:740px; font:900 clamp(1.65rem,2.8vw,3rem)/1.15 var(--tef-display); text-transform:uppercase; }
.testimonial-person { display:flex; align-items:center; gap:15px; }
.testimonial-person>span { width:50px; height:50px; display:grid; place-items:center; border-radius:50%; background:var(--tef-ink); color:var(--tef-accent); font-weight:900; }
.testimonial-person strong,.testimonial-person small { display:block; }
.testimonial-person small { color:#6b6e73; }

/* BMI */
.bmi-section { background:#181b20; }
.bmi-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; align-items:center; }
.bmi-grid .section-heading>p:last-child { color:var(--tef-muted); margin-top:24px; max-width:520px; }
.bmi-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; padding:40px; border:1px solid var(--tef-line); background:#111317; }
.bmi-form label { display:block; margin-bottom:8px; color:#cdd0d5; font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.bmi-form input { width:100%; height:58px; padding:0 16px; background:#1c2025; border:1px solid var(--tef-line); color:#fff; outline:0; }
.bmi-form input:focus { border-color:var(--tef-accent); }
.bmi-form .tef-button { align-self:end; }
.bmi-result { grid-row:1/3; grid-column:3; min-width:185px; padding:25px; background:var(--tef-accent); color:var(--tef-ink); display:flex; flex-direction:column; justify-content:center; }
.bmi-result span { font-size:.65rem; font-weight:900; letter-spacing:.1em; }
.bmi-result strong { font:900 4.5rem/1 var(--tef-display); }
.bmi-result p { margin:8px 0 0; font-weight:700; }

/* Pricing */
.pricing-section { background:var(--tef-paper); color:var(--tef-ink); }
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); margin-top:55px; gap:20px; align-items:stretch; }
.price-card { padding:42px; border:1px solid #d2d0c7; background:#faf9f5; display:flex; flex-direction:column; min-height:560px; position:relative; }
.price-card.best { background:var(--tef-accent); transform:translateY(-18px); border-color:var(--tef-accent); box-shadow:var(--tef-shadow); }
.best-label { position:absolute; top:0; right:0; padding:8px 13px; background:var(--tef-ink); color:#fff; font-size:.62rem; font-weight:900; letter-spacing:.08em; }
.plan-label { color:#646861; font-size:.7rem; font-weight:900; letter-spacing:.12em; }
.price-card h3 { margin:10px 0 28px; }
.price { display:flex; align-items:flex-start; margin-bottom:28px; }
.price span { font:900 1.2rem/1 var(--tef-display); margin-top:8px; }
.price strong { font:900 5rem/.9 var(--tef-display); }
.price small { align-self:flex-end; margin:0 0 7px 8px; color:#5f625e; }
.price.custom { min-height:72px; align-items:center; }
.price.custom strong { font-size:2.6rem; }
.price-card ul { padding:25px 0 0; margin:0 0 35px; list-style:none; border-top:1px solid rgba(12,13,15,.16); }
.price-card li { padding:8px 0 8px 25px; position:relative; color:#4e514d; }
.price-card li::before { content:"✓"; position:absolute; left:0; font-weight:900; }
.price-card .tef-button { margin-top:auto; }

/* Blog */
.blog-section { background:var(--tef-ink); }
.blog-heading { display:flex; align-items:end; justify-content:space-between; gap:40px; }
.post-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; margin-top:55px; }
.post-card { background:var(--tef-card); border:1px solid var(--tef-line); }
.post-thumb { display:block; height:250px; overflow:hidden; background:linear-gradient(145deg,#2b3037,#101216); }
.post-thumb img { width:100%; height:100%; object-fit:cover; transition:.4s; }
.post-card:hover .post-thumb img { transform:scale(1.05); }
.post-thumb span,.demo-thumb span { height:100%; display:grid; place-items:center; color:rgba(255,255,255,.12); font:900 7rem/1 var(--tef-display); }
.demo-thumb { height:250px; background:linear-gradient(145deg,#2b3037,#101216); }
.post-card-body { padding:28px; }
.post-meta { color:var(--tef-accent); font-size:.65rem; font-weight:900; letter-spacing:.1em; text-transform:uppercase; }
.post-card h3 { margin:12px 0 16px; font-size:1.5rem; line-height:1.08; }
.post-card-body>p:last-child { color:var(--tef-muted); font-size:.9rem; }

/* Contact */
.contact-section { padding:0 0 110px; background:var(--tef-ink); }
.contact-panel { padding:70px; background:var(--tef-accent); color:var(--tef-ink); display:grid; grid-template-columns:1.15fr .85fr; gap:70px; align-items:center; position:relative; overflow:hidden; }
.contact-panel::after { content:"TE"; position:absolute; right:-20px; bottom:-55px; font:900 12rem/1 var(--tef-display); color:rgba(12,13,15,.06); }
.contact-panel h2 { max-width:800px; }
.contact-panel>div>p:last-child { max-width:650px; margin-top:22px; color:#424900; }
.contact-actions { position:relative; z-index:2; display:flex; flex-direction:column; align-items:flex-start; gap:24px; }
.contact-phone small,.contact-phone strong { display:block; }
.contact-phone small { color:#4f5700; font-size:.65rem; font-weight:900; letter-spacing:.1em; }
.contact-phone strong { font:900 2rem/1.2 var(--tef-display); }

/* Footer */
.site-footer { border-top:1px solid var(--tef-line); padding:75px 0 24px; background:#090a0c; }
.footer-grid { display:grid; grid-template-columns:1.4fr .75fr 1fr 1fr; gap:60px; padding-bottom:65px; }
.footer-brand img { max-width:210px; max-height:105px; }
.footer-brand p { color:var(--tef-muted); margin-top:24px; }
.site-footer h2 { margin-bottom:22px; color:var(--tef-accent); font:900 .75rem/1 var(--tef-body); letter-spacing:.12em; }
.site-footer ul { padding:0; margin:0; list-style:none; }
.site-footer li { margin:8px 0; color:#c6c9ce; }
.site-footer a:hover { color:var(--tef-accent); }
.footer-bottom { border-top:1px solid var(--tef-line); padding-top:24px; display:flex; justify-content:space-between; gap:30px; color:#747880; font-size:.75rem; }

/* Inner pages */
.content-area { min-height:70vh; }
.page-hero { padding:180px 0 90px; background:linear-gradient(115deg,#0c0d0f,#20242a); position:relative; overflow:hidden; }
.page-hero::after { content:""; width:330px; height:330px; position:absolute; right:8%; top:80px; border:60px solid rgba(215,255,60,.08); border-radius:50%; }
.page-hero.compact h1 { font-size:clamp(3.2rem,6vw,6.5rem); }
.page-hero.post-hero h1 { max-width:1100px; font-size:clamp(3rem,6vw,6.3rem); }
.page-hero .archive-description { max-width:700px; color:var(--tef-muted); margin-top:20px; }
.prose { max-width:920px; padding-block:80px; }
.full-width-content .entry-content { padding-block:0; }
.entry-content { color:#d6d8dc; }
.entry-content>* { margin-top:0; margin-bottom:1.4em; }
.entry-content h2,.entry-content h3,.entry-content h4 { margin-top:1.4em; color:#fff; }
.entry-content h2 { font-size:2.7rem; }
.entry-content h3 { font-size:1.8rem; }
.entry-content a { color:var(--tef-accent); text-decoration:underline; }
.entry-content blockquote { margin-inline:0; padding:25px 30px; border-left:5px solid var(--tef-accent); background:var(--tef-card); font-size:1.2rem; }
.page-featured-image { margin-bottom:50px; }
.page-featured-image img { width:100%; }
.content-with-sidebar { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:60px; padding-block:80px; }
.posts-list { display:grid; gap:30px; }
.list-post { display:grid; grid-template-columns:290px 1fr; border:1px solid var(--tef-line); background:var(--tef-card); }
.list-post-thumb { min-height:250px; background:#111317; overflow:hidden; }
.list-post-thumb img { width:100%; height:100%; object-fit:cover; }
.list-post-thumb>span { height:100%; display:grid; place-items:center; color:rgba(255,255,255,.12); font:900 5rem/1 var(--tef-display); }
.list-post-body { padding:32px; }
.list-post-body h2 { font-size:2rem; margin:10px 0 14px; }
.list-post-body>p { color:var(--tef-muted); }
.widget { padding:28px; margin-bottom:24px; border:1px solid var(--tef-line); background:var(--tef-card); }
.widget-title { font-size:1.25rem; margin-bottom:18px; }
.widget ul { padding:0; margin:0; list-style:none; }
.widget li { padding:8px 0; border-bottom:1px solid var(--tef-line); }
.widget a:hover { color:var(--tef-accent); }
.widget input[type="search"] { width:100%; height:48px; padding:0 12px; background:#111317; color:#fff; border:1px solid var(--tef-line); }
.pagination .nav-links { display:flex; gap:8px; margin-top:20px; }
.page-numbers { min-width:42px; height:42px; display:grid; place-items:center; border:1px solid var(--tef-line); }
.page-numbers.current,.page-numbers:hover { background:var(--tef-accent); color:var(--tef-ink); border-color:var(--tef-accent); }
.comments-area { max-width:920px; padding-bottom:80px; }
.comment-list { padding-left:20px; }
.comment-body { padding:25px; margin:15px 0; border:1px solid var(--tef-line); background:var(--tef-card); }
.comment-form input:not([type="submit"]),.comment-form textarea { width:100%; padding:13px; background:var(--tef-card); color:#fff; border:1px solid var(--tef-line); }
.comment-form input[type="submit"] { padding:15px 25px; background:var(--tef-accent); border:0; color:var(--tef-ink); font-weight:900; }
.not-found-page { min-height:760px; display:grid; place-items:center; text-align:center; background:radial-gradient(circle at center,#24282e,#0c0d0f 65%); }
.not-found-inner { padding-top:80px; }
.error-code { color:var(--tef-accent); font:900 clamp(8rem,20vw,18rem)/.75 var(--tef-display); opacity:.2; }
.not-found-inner h1 { font-size:clamp(3rem,6vw,6rem); }
.not-found-inner>p:not(.error-code):not(.eyebrow) { color:var(--tef-muted); max-width:600px; margin:25px auto; }
.not-found-inner .eyebrow { justify-content:center; }
.tag-list a { display:inline-block; padding:6px 10px; margin:4px; border:1px solid var(--tef-line); }
.post-navigation { padding-bottom:80px; }
.post-navigation .nav-links { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.post-navigation a { display:block; padding:24px; border:1px solid var(--tef-line); background:var(--tef-card); }

/* WooCommerce basics */
.woocommerce ul.products li.product,.woocommerce div.product { color:#fff; }
.woocommerce ul.products li.product .price,.woocommerce div.product p.price { color:var(--tef-accent); }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button { background:var(--tef-accent); color:var(--tef-ink); border-radius:0; }

/* Responsive */
@media (max-width:1100px) {
  .header-inner { grid-template-columns:180px 1fr auto; gap:20px; }
  .main-navigation ul { gap:18px; }
  .hero-inner { grid-template-columns:1fr .8fr; }
  .program-grid { grid-template-columns:1fr 1fr; }
  .program-card:nth-child(2) { border-right:0; }
  .program-card:nth-child(-n+2) { border-bottom:1px solid var(--tef-line); }
  .method-grid,.bmi-grid { gap:55px; }
  .bmi-form { grid-template-columns:1fr 1fr; }
  .bmi-result { grid-column:1/3; grid-row:auto; }
  .footer-grid { grid-template-columns:1.3fr 1fr 1fr; }
  .footer-widgets { grid-column:1/-1; }
}
@media (max-width:900px) {
  .section { padding:82px 0; }
  .header-inner { height:74px; grid-template-columns:1fr auto; }
  .site-branding img { max-height:54px; max-width:155px; }
  .menu-toggle { display:block; z-index:2; }
  .header-cta { display:none; }
  .main-navigation { position:fixed; inset:74px 0 0; padding:28px 20px; background:rgba(12,13,15,.98); visibility:hidden; opacity:0; transform:translateY(-10px); transition:.2s; }
  .main-navigation.is-open { visibility:visible; opacity:1; transform:none; }
  .main-navigation ul { display:block; }
  .main-navigation a { padding:15px 0; font-size:1rem; border-bottom:1px solid var(--tef-line); }
  .main-navigation ul ul { position:static; min-width:0; display:block; opacity:1; visibility:visible; transform:none; background:transparent; border:0; box-shadow:none; padding:0 0 0 18px; }
  .hero { min-height:auto; padding-top:74px; }
  .hero-inner { grid-template-columns:1fr; padding:90px 0 120px; }
  .hero-visual { min-height:420px; }
  .hero-bottom { position:relative; left:auto; bottom:auto; transform:none; }
  .about-grid,.method-grid,.testimonial-grid,.bmi-grid,.contact-panel { grid-template-columns:1fr; }
  .metrics-grid { grid-template-columns:1fr 1fr; }
  .metrics-grid div:nth-child(2) { border-right:0; }
  .metrics-grid div:nth-child(-n+2) { border-bottom:1px solid #d5d3ca; }
  .schedule-header { grid-template-columns:1fr; }
  .schedule-panel>div { grid-template-columns:100px 1fr; }
  .schedule-panel>div span { grid-column:2; }
  .pricing-grid,.post-grid { grid-template-columns:1fr 1fr; }
  .price-card.best { transform:none; }
  .price-card:last-child { grid-column:1/-1; }
  .content-with-sidebar { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:650px) {
  .tef-container { width:min(calc(100% - 28px),var(--tef-container)); }
  h1 { font-size:clamp(3rem,15vw,5rem); }
  h2 { font-size:clamp(2.35rem,11vw,4rem); }
  .hero-inner { padding-top:70px; }
  .hero-visual { min-height:350px; }
  .hero-brand-stamp { width:290px; padding:62px; }
  .hero-stat { width:130px; }
  .hero-stat-one { bottom:25px; }
  .hero-stat-two { top:35px; }
  .hero-bottom { display:block; }
  .hero-bottom div { border-right:0; border-bottom:1px solid var(--tef-line); margin:0; }
  .hero-bottom div:last-child { border-bottom:0; }
  .about-grid { gap:45px; }
  .metrics-grid,.program-grid,.pricing-grid,.post-grid { grid-template-columns:1fr; }
  .metrics-grid div,.metrics-grid div:nth-child(2) { border-right:0; border-bottom:1px solid #d5d3ca; }
  .program-card { border-right:0; border-bottom:1px solid var(--tef-line); }
  .program-card:last-child { border-bottom:0; }
  .method-visual { min-height:480px; }
  .method-ring { width:280px; height:280px; border-width:32px; }
  .method-ring span { font-size:1.9rem; }
  .schedule-days { grid-template-columns:repeat(3,1fr); }
  .schedule-days button:nth-child(3n) { border-right:0; }
  .schedule-days button:nth-child(-n+3) { border-bottom:1px solid var(--tef-line); }
  .schedule-panel.active { grid-template-columns:1fr; }
  .schedule-panel>div { border-right:0; border-bottom:1px solid var(--tef-line); }
  .testimonial-card { padding:35px 25px; }
  .bmi-form { grid-template-columns:1fr; padding:25px; }
  .bmi-result { grid-column:1; }
  .price-card:last-child { grid-column:auto; }
  .blog-heading,.footer-bottom { display:block; }
  .blog-heading .text-link { margin-top:25px; }
  .contact-panel { padding:45px 25px; gap:35px; }
  .footer-grid { grid-template-columns:1fr; gap:38px; }
  .list-post { grid-template-columns:1fr; }
  .list-post-thumb { min-height:220px; }
  .post-navigation .nav-links { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .reveal { opacity:1; transform:none; }
}
