.elementor-kit-6{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */:root{
    --ink:#1C2B2E;
    --ink-soft:#4B5D60;
    --blue-deep:#436573;
    --blue-mid:#5F818D;
    --blue-pale:#E7EEEF;
    --sand:#F1E7D6;
    --sand-dark:#E3D3B4;
    --coral:#D6A24A;
    --coral-dark:#B9853A;
    --paper:#FBF7EF;
    --surface:#FFFFFF;
    --line:rgba(28,43,46,0.12);
    --shadow:0 24px 60px -28px rgba(67,101,115,0.35);
    --font-display:'Iowan Old Style','Palatino Linotype','URW Palladio L',Georgia,serif;
    --font-body:'Avenir Next','Century Gothic','Futura',-apple-system,'Segoe UI',Roboto,sans-serif;
    --r-lg:28px; --r-md:18px; --r-sm:12px; --r-pill:999px;
    color-scheme:light;
  }
  @media (prefers-color-scheme:dark){
    :root{
      --ink:#EDE7DA; --ink-soft:#B9C3C2;
      --blue-deep:#1E333B; --blue-mid:#33525C; --blue-pale:#1A2F35;
      --sand:#2A2318; --sand-dark:#3A2F1E;
      --coral:#E8B563; --coral-dark:#C99544;
      --paper:#0E1C20; --surface:#152428;
      --line:rgba(237,231,218,0.14);
      --shadow:0 24px 60px -28px rgba(0,0,0,0.6);
      color-scheme:dark;
    }
  }
  :root[data-theme="dark"]{
    --ink:#EDE7DA; --ink-soft:#B9C3C2;
    --blue-deep:#1E333B; --blue-mid:#33525C; --blue-pale:#1A2F35;
    --sand:#2A2318; --sand-dark:#3A2F1E;
    --coral:#E8B563; --coral-dark:#C99544;
    --paper:#0E1C20; --surface:#152428;
    --line:rgba(237,231,218,0.14);
    --shadow:0 24px 60px -28px rgba(0,0,0,0.6);
    color-scheme:dark;
  }
  :root[data-theme="light"]{
    --ink:#1C2B2E; --ink-soft:#4B5D60;
    --blue-deep:#436573; --blue-mid:#5F818D; --blue-pale:#E7EEEF;
    --sand:#F1E7D6; --sand-dark:#E3D3B4;
    --coral:#D6A24A; --coral-dark:#B9853A;
    --paper:#FBF7EF; --surface:#FFFFFF;
    --line:rgba(28,43,46,0.12);
    --shadow:0 24px 60px -28px rgba(67,101,115,0.35);
    color-scheme:light;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0; background:var(--paper); color:var(--ink);
    font-family:var(--font-body); font-size:16px; line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  img{max-width:100%; display:block;}
  a{color:inherit;}
  h1,h2,h3,h4{font-family:var(--font-display); font-weight:600; margin:0; text-wrap:balance; letter-spacing:-0.01em;}
  p{margin:0;}
  .wrap{max-width:1240px; margin:0 auto; padding:0 28px;}
  @media (min-width:2400px){ .wrap{max-width:1560px;} }
  .eyebrow{
    font-family:var(--font-body); font-size:12.5px; font-weight:700; letter-spacing:0.14em;
    text-transform:uppercase; color:var(--coral); display:inline-flex; align-items:center; gap:8px;
  }
  .eyebrow::before{content:""; width:18px; height:2px; background:var(--coral); display:inline-block; border-radius:2px;}
  ::selection{background:var(--coral); color:#fff;}
  :focus-visible{outline:2.5px solid var(--coral); outline-offset:3px; border-radius:4px;}

  /* Buttons */
  .btn{
    font-family:var(--font-body); font-weight:700; font-size:15px; letter-spacing:0.01em;
    padding:15px 28px; border-radius:var(--r-pill); border:1.5px solid transparent; cursor:pointer;
    display:inline-flex; align-items:center; gap:10px; text-decoration:none; transition:transform .25s ease, box-shadow .25s ease, background .25s ease, border-color .25s ease;
    white-space:nowrap;
  }
  .btn-fill{ background:var(--coral); color:#fff; box-shadow:0 14px 30px -12px rgba(226,104,61,.55); }
  .btn-fill:hover{ background:var(--coral-dark); transform:translateY(-2px); box-shadow:0 18px 34px -10px rgba(226,104,61,.6); }
  .btn-ghost{ background:rgba(255,255,255,0.12); color:#fff; border-color:rgba(255,255,255,0.55); backdrop-filter:blur(6px); }
  .btn-ghost:hover{ background:rgba(255,255,255,0.22); border-color:#fff; transform:translateY(-2px); }
  .btn-line{ background:transparent; color:var(--blue-deep); border-color:var(--blue-deep); }
  .btn-line:hover{ background:var(--blue-deep); color:#fff; transform:translateY(-2px); }
  .btn-sm{ padding:10px 18px; font-size:13.5px; }

  /* NAV */
  header.site{
    position:sticky; top:0; z-index:60; padding:18px 0;
    transition:padding .3s ease, background .3s ease, box-shadow .3s ease;
  }
  header.site .bar{
    display:flex; align-items:center; justify-content:space-between; gap:24px;
    background:rgba(255,255,255,0.14); border:1px solid rgba(255,255,255,0.28);
    backdrop-filter:blur(14px) saturate(140%); -webkit-backdrop-filter:blur(14px) saturate(140%);
    border-radius:var(--r-pill); padding:10px 12px 10px 22px; transition:all .3s ease;
  }
  header.site.scrolled{ padding:12px 0; }
  header.site.scrolled .bar{
    background:var(--surface); border-color:var(--line); box-shadow:var(--shadow);
  }
  header.site.scrolled .navlink, header.site.scrolled .logotext{ color:var(--ink); }
  header.site .navlink, header.site .logotext{ color:#fff; transition:color .3s ease; }
  .logo{ display:flex; align-items:center; gap:10px; text-decoration:none; }
  .logo .mark{
    width:38px; height:38px; border-radius:50%; background:var(--coral);
    display:flex; align-items:center; justify-content:center; color:#fff; font-family:var(--font-display);
    font-weight:700; font-size:17px; flex:none;
  }
  .logotext{ font-family:var(--font-display); font-size:16.5px; line-height:1.15; }
  .logotext b{ display:block; font-weight:700; }
  .logotext span{ font-size:11.5px; font-family:var(--font-body); letter-spacing:.06em; opacity:.8; }
  nav.navlinks{ display:flex; gap:26px; align-items:center; }
  .navlink{ font-size:14.5px; font-weight:600; text-decoration:none; position:relative; padding:6px 0; }
  .navlink::after{ content:""; position:absolute; left:0; right:0; bottom:0; height:2px; background:var(--coral); transform:scaleX(0); transition:transform .25s ease; transform-origin:left;}
  .navlink:hover::after{ transform:scaleX(1); }
  .navcta{ display:flex; align-items:center; gap:10px; }

  /* HERO */
  .hero{
    position:relative; min-height:100vh; display:flex; align-items:flex-end;
    margin-top:-92px; padding-top:92px; overflow:hidden;
  }
  .hero-media{ position:absolute; inset:0; z-index:0; }
  .hero-media img{ width:100%; height:100%; object-fit:cover; transform:scale(1.06); animation:kenburns 26s ease-in-out infinite alternate; }
  @keyframes kenburns{ from{ transform:scale(1.06) translate3d(0,0,0);} to{ transform:scale(1.16) translate3d(-1%,-1%,0);} }
  .hero-media::after{
    content:""; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(28,51,59,.55) 0%, rgba(28,51,59,.35) 38%, rgba(28,51,59,.86) 100%),
               linear-gradient(90deg, rgba(28,51,59,.55) 0%, rgba(28,51,59,.05) 55%);
  }
  .hero-content{ position:relative; z-index:2; width:100%; padding-bottom:150px; color:#fff; }
  .hero-content .eyebrow{ color:var(--sand); }
  .hero-content .eyebrow::before{ background:var(--sand); }
  .hero h1{ font-size:clamp(38px,6vw,72px); margin:14px 0 20px; max-width:15ch; color:#fff; line-height:1.04; }
  .hero h1 em{ font-style:normal; color:var(--sand); }
  .hero p.lede{ font-size:18px; max-width:46ch; color:rgba(255,255,255,.88); margin-bottom:34px; }
  .hero-actions{ display:flex; gap:16px; flex-wrap:wrap; }
  .scrollcue{ position:absolute; right:28px; bottom:calc(150px + 8px); z-index:2; display:flex; flex-direction:column; align-items:center; gap:8px; color:rgba(255,255,255,.75); font-size:11.5px; letter-spacing:.14em; text-transform:uppercase;}
  .scrollcue .stick{ width:1.5px; height:34px; background:rgba(255,255,255,.5); position:relative; overflow:hidden;}
  .scrollcue .stick::after{ content:""; position:absolute; top:-100%; left:0; width:100%; height:100%; background:#fff; animation:cue 2s ease-in-out infinite; }
  @keyframes cue{ 0%{top:-100%;} 60%{top:100%;} 100%{top:100%;} }

  /* SEARCH CARD */
  .search-wrap{ position:relative; z-index:5; margin-top:-96px; }
  .search-card{
    background:var(--surface); border-radius:var(--r-lg); box-shadow:var(--shadow);
    border:1px solid var(--line); padding:10px; max-width:1000px; margin:0 auto;
  }
  .search-tabs{ display:flex; gap:6px; padding:8px 8px 4px; }
  .stab{
    border:none; background:transparent; padding:12px 20px; border-radius:var(--r-pill); font-family:var(--font-body);
    font-weight:700; font-size:14.5px; cursor:pointer; color:var(--ink-soft); display:flex; align-items:center; gap:8px;
  }
  .stab.active{ background:var(--sand); color:var(--blue-deep); }
  .stab .soon{ font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; background:var(--blue-pale); color:var(--blue-mid); padding:3px 8px; border-radius:var(--r-pill); }
  .search-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr auto; gap:10px; padding:8px; }
  .sfield{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r-md); padding:11px 16px; }
  .sfield label{ display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-soft); margin-bottom:3px; }
  .sfield .val{ font-size:14.5px; font-weight:600; }
  .search-grid .btn{ padding:0 26px; border-radius:var(--r-md); align-self:stretch; }
  @media (max-width:1024px){ .search-grid{ grid-template-columns:1fr 1fr; } .search-grid .btn{ grid-column:1/-1; justify-content:center; padding:15px; } }

  /* SECTIONS generic */
  section{ padding:118px 0; }
  .section-head{ max-width:640px; margin-bottom:56px; }
  .section-head h2{ font-size:clamp(28px,3.4vw,42px); margin-top:14px; }
  .section-head p{ margin-top:16px; color:var(--ink-soft); font-size:16.5px; max-width:52ch; }
  .reveal{ opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s ease; }
  .reveal.in{ opacity:1; transform:none; }
  @media (prefers-reduced-motion:reduce){ .reveal{ opacity:1; transform:none; transition:none;} .hero-media img{ animation:none; } }

  /* F-SECTION */
  .fsection .wrap{ display:grid; grid-template-columns:1.05fr 0.95fr; gap:64px; align-items:center; }
  .fpic{ position:relative; border-radius:var(--r-lg); overflow:hidden; box-shadow:var(--shadow); aspect-ratio:6/7; }
  .fpic img{ width:100%; height:100%; object-fit:cover; }
  .fbadge{
    position:absolute; left:24px; bottom:24px; background:var(--surface); border-radius:var(--r-md);
    padding:16px 20px; box-shadow:var(--shadow); display:flex; gap:14px; align-items:center; max-width:260px;
  }
  .fbadge .num{ font-family:var(--font-display); font-size:28px; color:var(--coral); font-weight:700; line-height:1; }
  .fbadge .lbl{ font-size:12.5px; color:var(--ink-soft); line-height:1.3; }
  .ftext h2{ font-size:clamp(30px,3.6vw,44px); line-height:1.08; margin:16px 0 22px; }
  .ftext p{ color:var(--ink-soft); font-size:17px; margin-bottom:28px; max-width:48ch; }
  .trustrow{ display:flex; flex-wrap:wrap; gap:12px; margin-top:34px; }
  .trustchip{
    display:flex; align-items:center; gap:8px; background:var(--blue-pale); color:var(--blue-deep);
    border-radius:var(--r-pill); padding:9px 16px; font-size:12.5px; font-weight:700;
  }
  .trustchip .dot{ width:6px; height:6px; border-radius:50%; background:var(--coral); }
  @media (max-width:880px){ .fsection .wrap{ grid-template-columns:1fr; } }

  /* SERVICE */
  .service{ background:var(--blue-pale); }
  .service-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
  .icard{
    background:var(--surface); border:1px solid var(--line); border-radius:var(--r-lg); padding:30px 26px;
    transition:transform .3s ease, box-shadow .3s ease;
  }
  .icard:hover{ transform:translateY(-6px); box-shadow:var(--shadow); }
  .icard .ic{
    width:52px; height:52px; border-radius:var(--r-sm); background:var(--sand); display:flex; align-items:center;
    justify-content:center; margin-bottom:18px; color:var(--blue-deep);
  }
  .icard h3{ font-size:18.5px; margin-bottom:8px; }
  .icard p{ font-size:14.5px; color:var(--ink-soft); }
  .icard.bridge{ background:var(--blue-deep); border-color:var(--blue-deep); color:#fff; }
  .icard.bridge .ic{ background:var(--coral); color:#fff; }
  .icard.bridge p{ color:rgba(255,255,255,.78); }
  .icard.bridge a{ color:var(--sand); font-weight:700; font-size:13.5px; text-decoration:none; display:inline-flex; align-items:center; gap:6px; margin-top:10px; }
  @media (max-width:880px){ .service-grid{ grid-template-columns:1fr 1fr; } }
  @media (max-width:767px){ .service-grid{ grid-template-columns:1fr; } }

  /* MAP */
  .mapsec .wrap{ display:grid; grid-template-columns:1fr; gap:0; }
  .mapstage{
    position:relative; background:linear-gradient(180deg,var(--blue-pale) 0%, var(--surface) 100%);
    border:1px solid var(--line); border-radius:var(--r-lg); padding:20px; overflow:hidden;
  }
  .mapstage svg{ width:100%; height:auto; display:block; }
  .pin{ cursor:pointer; }
  .pin circle.core{ fill:var(--coral); transition:r .2s ease; }
  .pin circle.pulse{ fill:var(--coral); opacity:.35; animation:pulse 2.4s ease-out infinite; }
  .pin:hover circle.core{ r:8; }
  @keyframes pulse{ 0%{ r:6; opacity:.4;} 100%{ r:20; opacity:0;} }
  .pin text{ font-family:var(--font-body); font-weight:700; font-size:11px; fill:var(--blue-deep); }
  :root[data-theme="dark"] .pin text, .pin text{ fill:var(--ink); }
  .maplegend{ display:flex; gap:20px; flex-wrap:wrap; margin-top:22px; font-size:13px; color:var(--ink-soft); }
  .maplegend span{ display:inline-flex; align-items:center; gap:7px; }
  .maplegend i{ width:9px; height:9px; border-radius:50%; background:var(--coral); display:inline-block; }

  /* BENTO */
  .bento{ display:grid; grid-template-columns:repeat(4,1fr); grid-auto-rows:170px; gap:20px; }
  .bcard{
    position:relative; border-radius:var(--r-lg); overflow:hidden; color:#fff; text-decoration:none;
    box-shadow:0 1px 0 var(--line); transition:transform .4s ease, box-shadow .4s ease;
  }
  .bcard:hover{ transform:translateY(-4px); box-shadow:var(--shadow); }
  .bcard img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s ease; }
  .bcard:hover img{ transform:scale(1.07); }
  .bcard::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(28,51,59,0) 40%, rgba(28,51,59,.82) 100%); }
  .bcard .btext{ position:absolute; left:22px; right:22px; bottom:18px; z-index:2; }
  .bcard .btag{ font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.1em; color:var(--sand); }
  .bcard h3{ font-size:20px; margin-top:4px; color:#fff; }
  .bcard .arrow{ position:absolute; top:18px; right:18px; z-index:2; width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.18); backdrop-filter:blur(6px); display:flex; align-items:center; justify-content:center; transition:background .3s ease, transform .3s ease; }
  .bcard:hover .arrow{ background:var(--coral); transform:rotate(45deg); }
  .b-sylt{ grid-column:1 / 3; grid-row:1 / 3; }
  .b-familie{ grid-column:3 / 5; grid-row:1 / 2; }
  .b-insel{ grid-column:3 / 4; grid-row:2 / 4; }
  .b-rad{ grid-column:4 / 5; grid-row:2 / 3; }
  .b-hund{ grid-column:4 / 5; grid-row:3 / 4; }
  .b-orte{ grid-column:1 / 3; grid-row:3 / 4; }
  @media (max-width:1024px){
    .bento{ grid-template-columns:repeat(2,1fr); grid-auto-rows:180px; }
    .b-sylt{ grid-column:1 / 3; grid-row:1 / 3; }
    .b-familie{ grid-column:1 / 2; grid-row:3 / 4; }
    .b-insel{ grid-column:2 / 3; grid-row:3 / 5; }
    .b-rad{ grid-column:1 / 2; grid-row:4 / 5; }
    .b-hund{ grid-column:1 / 2; grid-row:5 / 6; }
    .b-orte{ grid-column:1 / 3; grid-row:5 / 6; }
  }
  @media (max-width:767px){
    .bento{ grid-template-columns:1fr; grid-auto-rows:220px; }
    .b-sylt,.b-familie,.b-insel,.b-rad,.b-hund,.b-orte{ grid-column:1 / 2; grid-row:auto; }
  }

  /* IMMO BAND */
  .immoband{ background:var(--blue-deep); color:#fff; overflow:hidden; }
  .immoband .wrap{ display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
  .immoband .eyebrow{ color:var(--sand); }
  .immoband .eyebrow::before{ background:var(--sand); }
  .immoband h2{ color:#fff; font-size:clamp(30px,3.8vw,46px); margin:16px 0 22px; }
  .immoband p{ color:rgba(255,255,255,.82); font-size:17px; margin-bottom:32px; max-width:50ch; }
  .immoband .btnrow{ display:flex; gap:22px; flex-wrap:wrap; align-items:center; }
  .immoband .linkcta{ color:var(--sand); text-decoration:none; font-weight:700; font-size:14.5px; display:inline-flex; align-items:center; gap:6px; }
  .immopic{ position:relative; border-radius:var(--r-lg); overflow:hidden; aspect-ratio:5/4; box-shadow:0 40px 90px -30px rgba(0,0,0,.55); }
  .immopic img{ width:100%; height:100%; object-fit:cover; }
  .immostat{ position:absolute; right:20px; top:20px; background:rgba(255,255,255,.14); backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.35); border-radius:var(--r-md); padding:14px 18px; }
  .immostat .n{ font-family:var(--font-display); font-size:24px; font-weight:700; }
  .immostat .l{ font-size:11px; letter-spacing:.05em; text-transform:uppercase; opacity:.85; }
  @media (max-width:880px){ .immoband .wrap{ grid-template-columns:1fr; } .immoband{ text-align:left; } }

  /* FOOTER */
  footer{ background:var(--blue-deep); color:rgba(255,255,255,.8); padding-top:90px; }
  .flogos{ display:flex; align-items:center; gap:26px; flex-wrap:wrap; padding-bottom:52px; border-bottom:1px solid rgba(255,255,255,.14); margin-bottom:52px; }
  .flogo{ display:flex; align-items:center; gap:10px; }
  .flogo .mark{ width:34px; height:34px; border-radius:50%; background:var(--coral); display:flex; align-items:center; justify-content:center; color:#fff; font-family:var(--font-display); font-weight:700; }
  .flogo b{ color:#fff; font-family:var(--font-display); font-size:15.5px; display:block; }
  .flogo span{ font-size:10.5px; letter-spacing:.05em; }
  .fdivider{ width:1px; height:32px; background:rgba(255,255,255,.2); }
  .fgrid{ display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr 1.3fr; gap:36px; padding-bottom:64px; }
  .fcol h4{ color:#fff; font-size:13px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:18px; font-family:var(--font-body); }
  .fcol ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
  .fcol a{ text-decoration:none; font-size:14.5px; color:rgba(255,255,255,.78); transition:color .2s ease; }
  .fcol a:hover{ color:var(--sand); }
  .fcol.brand p{ font-size:14.5px; color:rgba(255,255,255,.72); margin-bottom:20px; max-width:32ch; }
  .newsl{ display:flex; border-radius:var(--r-pill); overflow:hidden; border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.08); max-width:320px; }
  .newsl input{ flex:1; background:transparent; border:none; padding:12px 16px; color:#fff; font-family:var(--font-body); font-size:13.5px; }
  .newsl input::placeholder{ color:rgba(255,255,255,.55); }
  .newsl button{ border:none; background:var(--coral); color:#fff; padding:0 18px; font-weight:700; cursor:pointer; }
  .contactline{ display:flex; align-items:flex-start; gap:10px; font-size:14px; margin-bottom:12px; color:rgba(255,255,255,.82); }
  .fbottom{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; padding:26px 0; border-top:1px solid rgba(255,255,255,.14); font-size:13px; }
  .fbottom .legal{ display:flex; gap:22px; flex-wrap:wrap; }
  .fbottom .legal a{ text-decoration:none; color:rgba(255,255,255,.65); }
  .social{ display:flex; gap:10px; }
  .social a{ width:34px; height:34px; border-radius:50%; border:1px solid rgba(255,255,255,.3); display:flex; align-items:center; justify-content:center; text-decoration:none; color:#fff; transition:background .2s ease, transform .2s ease; }
  .social a:hover{ background:var(--coral); border-color:var(--coral); transform:translateY(-2px); }
  @media (max-width:900px){ .fgrid{ grid-template-columns:1fr 1fr; } }
  @media (max-width:767px){ .fgrid{ grid-template-columns:1fr; } }/* End custom CSS */