:root{
  --cream:#f6f0e3;
  --paper:#fffaf0;
  --olive:#59671f;
  --olive2:#727f36;
  --burg:#8e2d2c;
  --orange:#ef6d2f;
  --peach:#f7d8c7;
  --green:#e2ead1;
  --ink:#3b3b30;
  --line:rgba(89,103,31,.16);
}


body{
  background:var(--cream);
  color:var(--ink);
}


.tt-main{
  overflow:hidden;
}



/* =========================================
   HERO
   ========================================= */

.tt-hero{
  position:relative;
  min-height:620px;
  display:grid;
  place-items:center;
  overflow:hidden;
  background:#2a2a22;
}


.tt-hero-mosaic{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  grid-template-rows:repeat(2,1fr);
  gap:3px;
}


.tt-hero-mosaic figure{
  margin:0;
  overflow:hidden;
}


.tt-hero-mosaic img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  filter:brightness(.55) saturate(.92);
}


.tt-hero-card{
  position:relative;
  z-index:2;

  width:min(
    580px,
    calc(100% - 42px)
  );

  padding:28px 38px 34px;

  border-radius:26px;

  text-align:center;

  background:
    rgba(255,250,240,.97);

  box-shadow:
    0 22px 64px
    rgba(0,0,0,.26);
}


.tt-own-logo{
  display:block;

  width:min(
    160px,
    40vw
  );

  height:auto;

  margin:
    0 auto 4px;
}


.tt-eyebrow{
  font:
    700 .78rem/1.35
    Inter,
    sans-serif;

  letter-spacing:.15em;

  color:var(--olive);
}


.tt-hero h1{
  margin:
    8px 0 4px;

  color:
    var(--olive);

  font:
    700
    clamp(3.2rem,6vw,5.2rem)
    /.92
    'Cormorant Garamond',
    serif;
}


.tt-tagline{
  margin:
    0 0 10px;

  color:
    var(--orange);

  font:
    italic 600
    clamp(1.22rem,2.4vw,1.72rem)
    /1.3
    Inter,
    sans-serif;
}


.tt-keywords{
  margin:0;

  color:
    var(--burg);

  font:
    800 .95rem/1.4
    Inter,
    sans-serif;

  letter-spacing:.07em;
}


.tt-cta{
  display:inline-block;

  margin-top:16px;

  padding:
    16px 25px;

  border-radius:
    999px;

  background:
    var(--burg);

  color:
    #fff!important;

  text-decoration:none;

  box-shadow:
    0 8px 22px
    rgba(142,45,44,.24);

  font:
    800 1rem/1
    Inter,
    sans-serif;

  transition:.2s;
}


.tt-cta:hover{
  transform:
    translateY(-2px);

  background:
    #742322;
}



/* =========================================
   TANYATORNA NYITÓ VIDEÓ
   ========================================= */

.tt-video-intro{
  max-width:1080px;

  margin:
    48px auto 10px;

  padding:
    0 38px;
}


.tt-video-frame{
  overflow:hidden;

  border-radius:24px;

  background:#1f1f1b;

  box-shadow:
    0 16px 40px
    rgba(56,52,39,.16);
}


.tt-video-frame video{
  display:block;

  width:100%;

  height:auto;

  max-height:680px;

  background:#000;
}



/* =========================================
   SZÖVEGES SZEKCIÓK
   ========================================= */

.tt-section{
  max-width:980px;

  margin:
    0 auto;

  padding:
    76px 38px;

  position:relative;
}


.tt-main >
.tt-section +
.tt-section{
  border-top:
    1px solid
    var(--line);
}


.tt-copy{
  max-width:820px;

  margin:
    0 auto;
}


.tt-section h2,
.tt-gallery-head h2{

  margin:
    0 0 18px;

  color:
    var(--olive);

  font:
    800
    clamp(2.3rem,4vw,3.35rem)
    /1.06
    Inter,
    sans-serif;

  letter-spacing:
    -.035em;
}


.tt-section h2:after,
.tt-gallery-head h2:after{

  content:"";

  display:block;

  width:96px;

  height:4px;

  margin-top:14px;

  border-radius:4px;

  background:
    var(--orange);
}


.tt-section h3{

  margin:
    28px 0 12px;

  color:
    var(--olive);

  font:
    800 1.5rem/1.35
    Inter,
    sans-serif;
}


.tt-section p,
.tt-section li{

  font:
    500 1.24rem/1.8
    Inter,
    sans-serif;
}


.tt-section p{

  margin:
    0 0 18px;
}


.tt-lead{

  max-width:800px;

  color:#7c574b;

  font-style:
    italic!important;

  font-size:
    1.34rem!important;

  line-height:
    1.7!important;
}


.tt-section small{

  font:
    600 1rem/1.55
    Inter,
    sans-serif;
}



/* =========================================
   INFORMÁCIÓS BLOKKOK
   ========================================= */

.tt-box{

  margin:
    32px 0;

  padding:
    30px 34px;

  border-radius:
    22px;
}


.tt-box h3{
  margin-top:0;
}


.tt-box p:last-child{
  margin-bottom:0;
}


.tt-box.green{
  background:
    var(--green);
}


.tt-box.peach{
  background:
    var(--peach);
}


.tt-box.burgundy{

  background:
    var(--burg);

  color:#fff;
}


.tt-box.burgundy h3{
  color:#fff;
}


.tt-box.olive{

  background:
    var(--olive);

  color:#fff;
}


.tt-box.olive h3{
  color:#fff;
}


.centered{
  text-align:center;
}



/* =========================================
   NAGY KÉPEK
   ========================================= */

.tt-photo-break{

  width:
    min(
      1180px,
      calc(100% - 48px)
    );

  margin:
    8px auto 10px;

  border-radius:
    28px;

  overflow:hidden;

  box-shadow:
    0 16px 38px
    rgba(56,52,39,.12);

  background:
    #24241e;
}


.tt-photo-break img{

  display:block;

  width:100%;

  max-height:620px;

  object-fit:cover;
}



/* =========================================
   HÁROM KÉPES BLOKK
   ========================================= */

.tt-photo-row{

  width:
    min(
      1180px,
      calc(100% - 48px)
    );

  margin:
    12px auto;

  display:grid;

  grid-template-columns:
    repeat(3,1fr);

  gap:16px;
}


.tt-photo-row figure{

  margin:0;

  overflow:hidden;

  border-radius:20px;

  background:#ece4d4;

  box-shadow:
    0 10px 28px
    rgba(56,52,39,.09);
}


.tt-photo-row img{

  display:block;

  width:100%;

  height:360px;

  object-fit:cover;
}



/* =========================================
   IDÉZETEK
   ========================================= */

.tt-quotes{

  display:grid;

  gap:12px;

  margin:
    38px 0;

  text-align:center;

  font:
    800
    clamp(1.45rem,3vw,2.05rem)
    /1.3
    Inter,
    sans-serif;
}


.tt-quotes
strong:nth-child(1){

  color:
    var(--olive);
}


.tt-quotes
strong:nth-child(2){

  color:
    var(--orange);
}


.tt-quotes
strong:nth-child(3){

  color:
    var(--burg);
}



/* =========================================
   KIEMELT SÁV
   ========================================= */

.tt-pill{

  margin:
    30px auto 0;

  padding:
    18px 26px;

  border-radius:
    999px;

  text-align:center;

  background:
    var(--green);

  color:
    var(--olive);

  font:
    800 1.05rem/1.45
    Inter,
    sans-serif;
}



/* =========================================
   KÁRTYÁK
   ========================================= */

.tt-cards{

  display:grid;

  gap:22px;

  margin:
    32px 0;
}


.tt-cards.three{

  grid-template-columns:
    repeat(3,1fr);
}


.tt-cards.two{

  grid-template-columns:
    repeat(2,1fr);
}


.tt-cards article{

  padding:
    26px 25px;

  border-radius:
    20px;

  background:
    var(--green);
}


.tt-cards
article:nth-child(even){

  background:
    var(--peach);
}


.tt-cards article h3{

  margin:
    0 0 10px;
}


.tt-cards article p{

  margin:0;

  font-size:
    1.12rem;

  line-height:
    1.6;
}


.orange{

  color:
    var(--orange)!important;
}


.burgundy-text{

  color:
    var(--burg)!important;
}


.tt-center{

  margin-top:
    32px;

  text-align:center;
}



/* =========================================
   LISTA
   ========================================= */

.tt-list{

  padding-left:0;

  list-style:none;
}


.tt-list li{

  position:relative;

  padding:
    8px 0
    8px 30px;
}


.tt-list li:before{

  content:"●";

  position:absolute;

  left:0;

  color:
    var(--orange);
}



/* =========================================
   OKTATÓ / BEMUTATKOZÁS
   ========================================= */

.tt-trainer-photo{

  display:block;

  width:
    min(
      720px,
      100%
    );

  height:auto;

  margin:
    36px auto;

  border-radius:
    24px;

  box-shadow:
    0 14px 34px
    rgba(56,52,39,.12);
}



/* =========================================
   VÉGSŐ GALÉRIA
   ========================================= */

.tt-gallery-section{

  max-width:
    1180px;

  margin:
    0 auto;

  padding:
    72px 30px 28px;
}


.tt-gallery-head{

  max-width:
    820px;

  margin:
    0 auto 34px;
}


.tt-gallery-head p{

  color:
    #7c574b;

  font:
    italic 600
    1.28rem/1.65
    Inter,
    sans-serif;
}


.tt-end-gallery{

  columns:
    4 240px;

  column-gap:
    14px;
}


.tt-end-gallery img{

  display:block;

  width:100%;

  height:auto;

  margin:
    0 0 14px;

  border-radius:
    16px;

  break-inside:
    avoid;

  box-shadow:
    0 8px 22px
    rgba(56,52,39,.09);
}



/* =========================================
   ZÁRÁS
   ========================================= */

.tt-closing{

  max-width:
    980px;

  margin:
    44px auto 80px;

  padding:
    0 28px;
}


.tt-closing-card{

  padding:
    54px 28px;

  border-radius:
    26px;

  text-align:center;

  background:
    var(--paper);

  box-shadow:
    0 12px 34px
    rgba(56,52,39,.09);
}


.tt-closing-card h2{

  margin:
    0 0 10px;

  color:
    var(--olive);

  font:
    800
    clamp(2.2rem,4vw,3.4rem)
    /1
    Inter,
    sans-serif;
}


.tt-closing-card h3{

  margin:
    0 0 12px;

  color:
    var(--orange);

  font:
    800
    clamp(1.75rem,4vw,2.8rem)
    /1.05
    Inter,
    sans-serif;
}


.tt-closing-card p{

  color:
    #6f5d54;

  font:
    italic 600
    1.2rem/1.5
    Inter,
    sans-serif;
}



/* =========================================
   TABLET
   ========================================= */

@media(max-width:900px){

  .tt-section{

    padding:
      62px 24px;
  }


  .tt-section p,
  .tt-section li{

    font-size:
      1.16rem;

    line-height:
      1.75;
  }


  .tt-cards.three,
  .tt-cards.two{

    grid-template-columns:
      1fr;
  }


  .tt-photo-row{

    grid-template-columns:
      1fr 1fr;
  }


  .tt-photo-row
  figure:last-child{

    grid-column:
      1 / -1;
  }


  .tt-photo-row img{

    height:
      330px;
  }


  .tt-hero{

    min-height:
      640px;
  }


  .tt-hero-card{

    padding:
      26px 24px 31px;
  }

}



/* =========================================
   MOBIL
   ========================================= */

@media(max-width:600px){

  .tt-hero{

    min-height:
      700px;
  }


  .tt-hero-mosaic{

    grid-template-columns:
      1fr;

    grid-template-rows:
      repeat(4,1fr);
  }


  .tt-hero-card{

    width:
      calc(100% - 28px);

    border-radius:
      20px;
  }


  /* VIDEÓ */

  .tt-video-intro{

    margin:
      28px auto 0;

    padding:
      0 16px;
  }


  .tt-video-frame{

    border-radius:
      14px;
  }


  .tt-section{

    padding:
      50px 18px;
  }


  .tt-section h2,
  .tt-gallery-head h2{

    font-size:
      2rem;
  }


  .tt-section h3{

    font-size:
      1.3rem;
  }


  .tt-section p,
  .tt-section li{

    font-size:
      1.08rem;

    line-height:
      1.7;
  }


  .tt-lead{

    font-size:
      1.15rem!important;
  }


  .tt-box{

    padding:
      24px 21px;

    border-radius:
      18px;
  }


  .tt-photo-break{

    width:100%;

    margin:0;

    border-radius:0;

    box-shadow:none;
  }


  .tt-photo-break img{

    max-height:none;
  }


  .tt-photo-row{

    width:100%;

    grid-template-columns:
      1fr;

    gap:8px;
  }


  .tt-photo-row figure,
  .tt-photo-row figure:last-child{

    grid-column:auto;

    border-radius:0;

    box-shadow:none;
  }


  .tt-photo-row img{

    height:auto;
  }


  .tt-gallery-section{

    padding:
      54px 14px 20px;
  }


  .tt-end-gallery{

    columns:
      2 140px;

    column-gap:
      8px;
  }


  .tt-end-gallery img{

    margin-bottom:
      8px;

    border-radius:
      10px;
  }


  .tt-closing{

    margin:
      30px 0 54px;

    padding:0;
  }


  .tt-closing-card{

    border-radius:0;

    padding:
      46px 20px;
  }


  .tt-cta{

    font-size:
      .92rem;

    padding:
      15px 18px;
  }

}


/* =========================================================
   TANYATORNA – TELJES PRÉMIUM DIZÁJN RÉTEG
   A tartalom és a képek változatlanok.
   ========================================================= */

:root{
  --tt-paper:#fffaf2;
  --tt-cream:#f5efe4;
  --tt-olive:#5c6a2c;
  --tt-olive-dark:#39451f;
  --tt-burg:#8a2f34;
  --tt-orange:#e97732;
  --tt-green:#e4ecd4;
  --tt-peach:#f8e7da;
  --tt-ink:#403a31;
  --tt-shadow:0 22px 60px rgba(59,50,38,.10);
  --tt-shadow-soft:0 12px 34px rgba(59,50,38,.08);
}

body{
  background:
    radial-gradient(circle at 10% 12%,rgba(92,106,44,.045),transparent 24%),
    radial-gradient(circle at 90% 35%,rgba(233,119,50,.04),transparent 23%),
    var(--tt-cream);
  color:var(--tt-ink);
  font-family:"DM Sans",Arial,sans-serif;
}

/* HERO */
.tt-hero{min-height:720px}
.tt-hero::after{
  content:"";
  position:absolute;inset:0;
  background:
    linear-gradient(180deg,rgba(25,25,19,.08),rgba(25,25,19,.26)),
    radial-gradient(circle at 50% 40%,transparent 0 28%,rgba(0,0,0,.16) 100%);
  pointer-events:none;
}
.tt-hero-mosaic img{filter:brightness(.62) saturate(.9)}
.tt-hero-card{
  width:min(620px,calc(100% - 42px));
  padding:34px 42px 38px;
  border-radius:34px;
  background:rgba(255,250,242,.97);
  border:1px solid rgba(255,255,255,.7);
  box-shadow:0 30px 80px rgba(0,0,0,.30);
  backdrop-filter:blur(8px);
}
.tt-eyebrow{font-family:"DM Sans",sans-serif}
.tt-hero h1{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(4rem,7vw,6rem);
  letter-spacing:-.045em;
}
.tt-tagline{
  font-family:"Caveat",cursive;
  font-style:normal;
  font-size:clamp(1.7rem,3vw,2.4rem);
  line-height:1;
  font-weight:700;
}
.tt-keywords{font-family:"DM Sans",sans-serif;font-size:.84rem}
.tt-cta{
  border-radius:14px;
  font-family:"DM Sans",sans-serif;
}

/* VIDEÓ */
.tt-video-intro{margin-top:58px}
.tt-video-frame{
  border-radius:30px;
  border:8px solid rgba(255,250,242,.85);
  box-shadow:var(--tt-shadow);
}

/* EGYSÉGES TIPOGRÁFIA */
.tt-section{
  max-width:1180px;
  padding:82px 34px;
  border-top:0!important;
}
.tt-section h2,.tt-gallery-head h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(3rem,5vw,4.8rem);
  line-height:.94;
  letter-spacing:-.04em;
  color:var(--tt-olive-dark);
}
.tt-section h2:after,.tt-gallery-head h2:after{
  width:76px;height:4px;background:var(--tt-orange)
}
.tt-section h3{
  font-family:"Cormorant Garamond",serif;
  font-size:1.45rem;
  color:var(--tt-olive-dark);
}
.tt-section p,.tt-section li{
  font-family:"DM Sans",sans-serif;
  font-size:1.05rem;
  line-height:1.72;
}
.tt-lead{
  font-family:"Cormorant Garamond",serif!important;
  font-size:1.38rem!important;
  line-height:1.55!important;
}

/* SZEMLÉLET */
.tt-philosophy{
  max-width:1060px;
  margin:70px auto 0;
  padding:58px 54px 62px;
  background:linear-gradient(135deg,rgba(255,250,242,.98),rgba(248,242,230,.96));
  border-radius:36px;
  box-shadow:var(--tt-shadow-soft);
}
.tt-philosophy h3{
  color:var(--tt-burg);
  font-family:"Caveat",cursive;
  font-size:2rem;
  line-height:1.1;
}

/* INFO DOBOZOK */
.tt-box{
  border-radius:22px;
  padding:28px 32px;
  box-shadow:none;
}
.tt-box.green{background:linear-gradient(135deg,var(--tt-green),#edf2e4)}
.tt-box.peach{background:linear-gradient(135deg,var(--tt-peach),#f9eee5)}
.tt-box.burgundy{
  background:linear-gradient(135deg,#6f2429,var(--tt-burg));
  box-shadow:0 18px 42px rgba(111,36,41,.18);
}
.tt-box.olive{
  background:linear-gradient(135deg,var(--tt-olive-dark),var(--tt-olive));
  box-shadow:0 18px 42px rgba(57,69,31,.18);
}

/* NAGY FOTÓK */
.tt-photo-break{
  border-radius:34px;
  box-shadow:var(--tt-shadow);
  margin:22px auto;
}

/* MOZGÁS */
.tt-movement{
  max-width:1120px;
  margin-top:48px;
  padding:72px 54px;
  background:
    radial-gradient(circle at 85% 18%,rgba(233,119,50,.08),transparent 24%),
    linear-gradient(135deg,#eef2e4,#f7f3e9);
  border-radius:36px;
}
.tt-quotes{
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.tt-quotes strong{
  min-height:110px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:18px;
  background:var(--tt-paper);
  box-shadow:var(--tt-shadow-soft);
  font-family:"Caveat",cursive;
  font-size:1.55rem;
}
.tt-pill{
  border-radius:14px;
  background:var(--tt-olive-dark);
  color:#fff;
  font-family:"DM Sans",sans-serif;
  font-size:.84rem;
}

/* KÉPSOR */
.tt-photo-row{
  gap:14px;
  margin:26px auto;
}
.tt-photo-row figure{
  border-radius:24px;
  box-shadow:var(--tt-shadow-soft);
}

/* MIT CSINÁLUNK */
.tt-activities{max-width:1120px;margin-top:40px}
.tt-cards{gap:18px}
.tt-cards article{
  border-radius:22px;
  background:linear-gradient(145deg,var(--tt-green),#eef2e4);
  box-shadow:var(--tt-shadow-soft);
  transition:.2s ease;
}
.tt-cards article:hover{transform:translateY(-4px)}
.tt-cards article:nth-child(even){
  background:linear-gradient(145deg,var(--tt-peach),#faeee4);
}

/* MIKOR? HOGYAN? */
.tt-schedule{
  max-width:1100px;
  margin-top:46px;
  padding:72px 50px;
  background:var(--tt-paper);
  border-radius:34px;
  box-shadow:var(--tt-shadow-soft);
}
.tt-schedule .tt-box.peach{border-left:6px solid var(--tt-orange)}

/* IDŐJÁRÁS */
.tt-weather{
  max-width:1100px;
  margin-top:46px;
  padding:72px 50px;
  background:linear-gradient(145deg,#f8f4e9,#eef2e3);
  border-radius:34px;
}

/* OKTATÓ */
.tt-trainer{
  max-width:1120px;
  margin-top:54px;
  padding:74px 54px;
  background:var(--tt-paper);
  border-radius:36px;
  box-shadow:var(--tt-shadow-soft);
}
.tt-trainer-photo{
  width:min(760px,100%);
  margin:40px auto;
  border-radius:30px 80px 30px 30px;
  box-shadow:var(--tt-shadow);
}

/* GALÉRIA */
.tt-gallery-section{padding-top:84px}
.tt-gallery-head p{
  font-family:"Cormorant Garamond",serif;
  font-size:1.25rem;
  line-height:1.55;
}
.tt-end-gallery img{
  border-radius:18px;
  box-shadow:var(--tt-shadow-soft);
}

/* ZÁRÁS */
.tt-closing{max-width:1040px;margin-top:54px}
.tt-closing-card{
  border-radius:34px;
  padding:62px 30px 66px;
  background:
    radial-gradient(circle at 85% 20%,rgba(233,119,50,.10),transparent 28%),
    linear-gradient(145deg,var(--tt-paper),#f7efe2);
  box-shadow:var(--tt-shadow);
}
.tt-closing-card h2{
  font-family:"Cormorant Garamond",serif;
  font-size:clamp(3rem,5vw,4.7rem);
}
.tt-closing-card h3{
  font-family:"Caveat",cursive;
  font-size:clamp(2rem,4vw,3rem);
}
.tt-closing-card p{
  font-family:"Cormorant Garamond",serif;
}

/* RESPONSIVE */
@media(max-width:900px){
  .tt-philosophy,.tt-movement,.tt-schedule,.tt-weather,.tt-trainer{
    margin-left:20px;margin-right:20px;padding:58px 30px;
  }
  .tt-quotes{grid-template-columns:1fr}
}
@media(max-width:600px){
  .tt-hero-card{padding:28px 22px 32px;border-radius:24px}
  .tt-section h2,.tt-gallery-head h2{font-size:2.65rem}
  .tt-section p,.tt-section li{font-size:1rem}
  .tt-lead{font-size:1.2rem!important}
  .tt-philosophy,.tt-movement,.tt-schedule,.tt-weather,.tt-trainer{
    margin-left:12px;margin-right:12px;padding:44px 22px;border-radius:24px;
  }
  .tt-box{padding:23px 20px;border-radius:18px}
  .tt-trainer-photo{border-radius:22px 48px 22px 22px}
  .tt-closing{margin-left:12px;margin-right:12px}
  .tt-closing-card{border-radius:24px}
}


/* =========================================================
   TANYATORNA – JAVÍTOTT, ÖNÁLLÓ FEJLÉC
   Nem használja a hiányzó logo1.png / logo2.png fájlokat.
   ========================================================= */

.tt-site-header{
  position:sticky;
  top:0;
  z-index:120;
  background:rgba(255,250,242,.95);
  backdrop-filter:blur(16px);
  box-shadow:0 1px 0 rgba(73,65,52,.08);
}

.tt-topline{
  background:#f3eadc;
  border-bottom:1px solid rgba(73,65,52,.08);
}

.tt-header-shell{
  width:min(1380px,calc(100% - 40px));
  margin:0 auto;
}

.tt-topline-inner{
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  color:#6c6258;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:.74rem;
}

.tt-topline-links{
  display:flex;
  align-items:center;
  gap:18px;
}

.tt-topline a{
  text-decoration:none;
  color:inherit;
}

.tt-navbar{
  background:rgba(255,250,242,.96);
}

.tt-navbar-inner{
  min-height:82px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:28px;
}

.tt-brand{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:max-content;
  text-decoration:none;
  color:var(--tt-olive-dark);
}

.tt-header-logo{
  width:56px;
  height:56px;
  object-fit:contain;
  display:block;
}

.tt-brand-copy{
  display:block;
}

.tt-brand-copy strong{
  display:block;
  color:var(--tt-olive-dark);
  font-family:"Caveat",cursive;
  font-size:1.8rem;
  line-height:.88;
  font-weight:700;
}

.tt-brand-copy small{
  display:block;
  margin-top:4px;
  color:#6d7252;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:.57rem;
  letter-spacing:.15em;
  text-transform:uppercase;
}

.tt-nav-links{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:23px;
}

.tt-nav-links a{
  position:relative;
  text-decoration:none;
  color:#493f36;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.04em;
}

.tt-nav-links a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-9px;
  height:2px;
  border-radius:3px;
  background:var(--tt-orange);
  transform:scaleX(0);
  transition:.2s ease;
}

.tt-nav-links a:hover::after,
.tt-nav-links a.active::after{
  transform:scaleX(1);
}

.tt-header-cta{
  min-width:max-content;
  padding:13px 18px;
  border-radius:14px;
  background:var(--tt-olive-dark);
  color:#fff!important;
  text-decoration:none;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:.79rem;
  font-weight:800;
  box-shadow:0 8px 20px rgba(57,69,31,.16);
}

.tt-menu-btn{
  display:none;
  border:0;
  background:transparent;
  color:var(--tt-olive-dark);
  font-size:1.8rem;
  cursor:pointer;
}

/* biztosítjuk, hogy a régi header CSS ne tudjon beleszólni */
.topbar,
.navbar-wrap,
.header-logos,
.nav-links:not(.tt-nav-links),
.hamburger:not(.tt-menu-btn){
  all:unset;
}

@media(max-width:1050px){
  .tt-navbar-inner{
    grid-template-columns:auto 1fr;
  }

  .tt-header-cta{
    display:none;
  }

  .tt-nav-links{
    justify-content:flex-end;
    gap:17px;
  }
}

@media(max-width:760px){
  .tt-header-shell{
    width:calc(100% - 28px);
  }

  .tt-topline{
    display:none;
  }

  .tt-navbar-inner{
    min-height:72px;
    grid-template-columns:1fr auto;
  }

  .tt-header-logo{
    width:46px;
    height:46px;
  }

  .tt-brand-copy strong{
    font-size:1.55rem;
  }

  .tt-brand-copy small{
    font-size:.5rem;
  }

  .tt-menu-btn{
    display:block;
    justify-self:end;
  }

  .tt-nav-links{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:72px;
    padding:20px 22px 24px;
    flex-direction:column;
    align-items:flex-start;
    gap:16px;
    background:rgba(255,250,242,.98);
    border-top:1px solid rgba(73,65,52,.08);
    box-shadow:0 16px 28px rgba(59,50,38,.10);
  }

  .tt-nav-links.active{
    display:flex;
  }

  .tt-nav-links a{
    width:100%;
    padding:4px 0;
    font-size:.84rem;
  }

  .tt-nav-links a::after{
    bottom:-2px;
    right:auto;
    width:42px;
  }
}


/* =========================================================
   EGYSÉGES FŐOLDALI FEJLÉC – TANYATORNA
   ========================================================= */
.topbar{
  position:sticky!important;
  top:0!important;
  z-index:100!important;
  background:rgba(255,248,233,.94)!important;
  border-bottom:1px solid rgba(75,53,35,.12)!important;
  backdrop-filter:blur(12px)!important;
}
.topbar .nav-shell{
  max-width:1400px!important;
  margin:auto!important;
  min-height:82px!important;
  padding:0 28px!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:32px!important;
}
.topbar .brand{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
  color:#355d21!important;
  text-decoration:none!important;
}
.topbar .brand strong{
  display:block!important;
  font:700 2rem/.9 "Caveat",cursive!important;
  color:#355d21!important;
}
.topbar .brand small{
  display:block!important;
  margin-top:3px!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:.61rem!important;
  font-weight:700!important;
  letter-spacing:.13em!important;
  text-transform:uppercase!important;
  color:#355d21!important;
}
.topbar nav{
  display:flex!important;
  justify-content:center!important;
  gap:22px!important;
}
.topbar nav a{
  position:relative!important;
  padding:30px 0 27px!important;
  color:inherit!important;
  text-decoration:none!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-size:.78rem!important;
  font-weight:700!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}
.topbar nav a::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:22px!important;
  height:2px!important;
  background:#d65a19!important;
  transform:scaleX(0)!important;
  transition:.2s!important;
}
.topbar nav a:hover::after,
.topbar nav a.active::after{transform:scaleX(1)!important}
.topbar .apply-btn{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:13px 18px!important;
  border-radius:12px!important;
  color:#fff!important;
  background:#355d21!important;
  border:2px solid #294a19!important;
  font-family:"DM Sans",Arial,sans-serif!important;
  font-weight:800!important;
  font-size:.83rem!important;
  text-decoration:none!important;
}
.topbar .menu-toggle{
  display:none!important;
  border:0!important;
  background:none!important;
  font-size:1.8rem!important;
  color:#355d21!important;
  cursor:pointer!important;
}

/* Régi TanyaTorna fejléc kikapcsolása */
.tt-site-header,
.tt-topline,
.tt-navbar,
.tt-menu-btn,
.tt-header-cta{
  display:none!important;
}

@media(max-width:1100px){
  .topbar .apply-btn{display:none!important}
  .topbar .nav-shell{grid-template-columns:auto 1fr!important}
}
@media(max-width:850px){
  .topbar nav{
    display:none!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    top:72px!important;
    flex-direction:column!important;
    background:#fff8e9!important;
    padding:18px 25px!important;
    box-shadow:0 18px 30px rgba(0,0,0,.1)!important;
  }
  .topbar nav.open{display:flex!important}
  .topbar nav a{padding:8px 0!important}
  .topbar nav a::after{display:none!important}
  .topbar .menu-toggle{display:block!important}
  .topbar .nav-shell{
    min-height:72px!important;
    grid-template-columns:1fr auto!important;
    padding:0 18px!important;
  }
}