/* Serendib Reisen — shared stylesheet, v3
   Trust & transparency positioning for the German market —
   distinct in both design AND content strategy from the French
   "carnet littéraire" (Koko Voyage) sister site. */

:root{
  --ink:#2A2321;
  --ink-soft:#6B5F58;
  --paper:#FFFFFF;
  --paper-alt:#F7F1EA;
  --paper-deep:#EEE2D3;
  --tea:#A8571E;
  --tea-deep:#6B3712;
  --jade:#3D6B5C;
  --line:rgba(42,35,33,.13);
  --line-soft:rgba(42,35,33,.07);
  --radius:3px;
  --measure:64ch;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--paper);color:var(--ink);
  font-family:"Noto Sans KR",sans-serif;font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4{
  font-family:"Noto Serif KR",serif;font-weight:600;
  line-height:1.15;margin:0;letter-spacing:-0.01em;
}
em{font-style:italic;font-weight:600;color:var(--tea);}
a{color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:1200px;margin:0 auto;padding:0 32px;}
.measure{max-width:var(--measure);}
.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--jade);margin-bottom:14px;}

/* ---------- header ---------- */
header{
  position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--line-soft);
}
.nav{display:flex;align-items:center;justify-content:space-between;padding:16px 0;gap:24px;flex-wrap:wrap;}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
.brand-mark{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--jade);display:flex;align-items:center;justify-content:center;color:var(--jade);font-family:"Noto Serif KR",serif;font-weight:600;font-size:1rem;flex-shrink:0;}
.brand-word{font-family:"Noto Serif KR",serif;font-weight:700;font-size:1.05rem;letter-spacing:.02em;line-height:1.1;color:var(--ink);}
.brand-word small{display:block;font-family:"Noto Sans KR",sans-serif;font-weight:500;font-size:.62rem;letter-spacing:.08em;color:var(--ink-soft);}
nav.links{display:flex;gap:28px;flex-wrap:wrap;font-size:.9rem;font-weight:500;}
nav.links a{text-decoration:none;border-bottom:2px solid transparent;padding-bottom:3px;}
nav.links a:hover{border-color:var(--jade);}
.nav-cta{font-size:.8rem;font-weight:700;letter-spacing:.04em;background:var(--tea);color:#fff;padding:11px 20px;border-radius:var(--radius);text-decoration:none;white-space:nowrap;}

/* ---------- section scaffolding ---------- */
section{padding:88px 0;}
.section-head{max-width:640px;margin-bottom:44px;}
.section-head h2{font-size:clamp(1.7rem,3vw,2.3rem);}
.kicker{font-size:.92rem;color:var(--ink-soft);margin-top:12px;max-width:56ch;}

/* ---------- hero ---------- */
.hero{padding:56px 0 0;}
.hero-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:56px;align-items:center;}
.hero h1{font-size:clamp(2.4rem,4.4vw,3.6rem);line-height:1.1;}
.hero-rule{width:56px;height:3px;background:var(--jade);margin:20px 0 22px;}
.hero p.lede{font-size:1.05rem;color:var(--ink-soft);max-width:46ch;}
.hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap;}
.btn{display:inline-block;padding:14px 24px;border-radius:var(--radius);text-decoration:none;font-size:.9rem;font-weight:700;letter-spacing:.02em;border:1.5px solid var(--tea);}
.btn.primary{background:var(--tea);color:#fff;}
.btn.ghost{color:var(--tea);background:transparent;}
.hero-photo-wrap{position:relative;}
.hero-photo{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:4/3.1;
  background:linear-gradient(155deg, rgba(107,55,18,.45), rgba(107,55,18,.05) 55%),
             repeating-linear-gradient(120deg, #C98A4B 0 40px, #6B3712 40px 80px);}
.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.trust-badge{
  position:absolute;right:-18px;bottom:-24px;background:#fff;border-radius:var(--radius);
  padding:18px 22px;box-shadow:0 14px 34px rgba(34,38,31,.18);width:190px;text-align:center;
  display:block;text-decoration:none;color:var(--ink);transition:box-shadow .15s ease,transform .15s ease;
}
.trust-badge:hover{box-shadow:0 18px 40px rgba(34,38,31,.24);transform:translateY(-2px);}
.trust-badge .tb-title{font-family:"Noto Serif KR",serif;font-weight:700;font-size:.95rem;margin-bottom:8px;}
.trust-badge .tb-owl{font-size:1.6rem;margin-bottom:6px;}
.trust-badge .tb-dots{display:flex;gap:4px;justify-content:center;margin-bottom:8px;}
.trust-badge .tb-dots i{width:9px;height:9px;border-radius:50%;background:#34A853;display:inline-block;}
.trust-badge .tb-sub{font-size:.72rem;color:var(--ink-soft);}

/* ---------- feature strip ---------- */
.feature-strip{background:var(--paper-alt);padding:36px 0;}
.feature-strip .wrap{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.feature{display:flex;gap:12px;align-items:flex-start;flex:1;min-width:180px;}
.feature .fi{width:22px;height:22px;flex-shrink:0;color:var(--jade);margin-top:2px;}
.feature h5{font-size:.88rem;font-weight:700;margin-bottom:2px;}
.feature span{font-size:.78rem;color:var(--ink-soft);}

/* ---------- trip grid ---------- */
.trips-layout{display:grid;grid-template-columns:.85fr 2.3fr;gap:48px;align-items:start;}
.trips-intro h2{font-size:clamp(1.6rem,2.8vw,2.1rem);}
.trips-intro p{color:var(--ink-soft);margin-top:14px;font-size:.95rem;}
.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.trip-card{text-decoration:none;color:var(--ink);}
.trip-photo{aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;position:relative;margin-bottom:12px;
  background:linear-gradient(160deg,var(--tea) 0%,#C98A4B 100%);}
.trip-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.trip-cat{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--jade);margin-bottom:4px;}
.trip-card h4{font-size:1.02rem;font-weight:700;margin-bottom:3px;}
.trip-card span{font-size:.82rem;color:var(--ink-soft);}
.trip-card .arrow{display:inline-block;margin-top:10px;font-size:.85rem;color:var(--tea);font-weight:600;}
.trip-card.new .trip-cat::after{content:" · NEW";color:var(--tea);}

/* ---------- Sharon / trust section ---------- */
.trust-person{background:var(--paper-alt);}
.trust-grid{display:grid;grid-template-columns:.8fr 1.2fr 1.4fr;gap:0;align-items:stretch;}
.trust-photo{aspect-ratio:3/4;position:relative;overflow:hidden;
  background:linear-gradient(160deg,var(--tea) 0%,#C98A4B 100%);}
.trust-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.trust-copy{padding:0 40px;display:flex;flex-direction:column;justify-content:center;}
.trust-copy h3{font-size:clamp(1.4rem,2.4vw,1.9rem);}
.trust-copy p{color:var(--ink-soft);margin-top:14px;font-size:.95rem;max-width:42ch;}
.trust-features{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:40px;align-content:center;}
.trust-features .feature{min-width:0;}

/* ---------- practical info / transparency block ---------- */
.facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;border:1px solid var(--line);}
.fact-card{background:var(--paper);padding:22px 20px;}
.fact-card h5{font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--jade);margin-bottom:8px;}
.fact-card p{font-size:.88rem;color:var(--ink-soft);margin:0;}
.fact-card a{color:var(--tea);font-weight:600;text-decoration:none;border-bottom:1px solid var(--tea);}

/* ---------- testimonials ---------- */
.quotes{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.quote{padding:26px;background:var(--paper-alt);border-radius:var(--radius);border-left:3px solid var(--jade);}
.quote .stars{color:var(--jade);font-size:.82rem;margin-bottom:10px;}
.quote p{font-style:italic;font-size:.98rem;margin:0 0 12px;color:var(--ink);}
.quote footer{font-size:.78rem;color:var(--ink-soft);}

/* ---------- faq ---------- */
details{border-top:1px solid var(--line);padding:20px 0;}
details:last-of-type{border-bottom:1px solid var(--line);}
summary{cursor:pointer;list-style:none;font-family:"Noto Serif KR",serif;font-weight:600;font-size:1.04rem;display:flex;justify-content:space-between;align-items:center;gap:16px;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+";font-size:1.3rem;color:var(--jade);flex-shrink:0;}
details[open] summary::after{content:"–";}
details p{color:var(--ink-soft);max-width:64ch;margin:14px 0 0;font-size:.95rem;}

/* ---------- itinerary (voyage pages) ---------- */
.itinerary{display:grid;gap:0;}
.day{display:grid;grid-template-columns:80px 1fr;gap:26px;padding:26px 0;border-top:1px solid var(--line);}
.day:last-child{border-bottom:1px solid var(--line);}
.day .num{font-family:"Noto Serif KR",serif;font-weight:700;font-size:1.4rem;color:var(--jade);}
.day .num span{display:block;font-family:"Noto Sans KR",sans-serif;font-weight:500;font-size:.66rem;color:var(--ink-soft);margin-top:4px;}
.day h4{font-size:1.05rem;margin-bottom:7px;}
.day p{color:var(--ink-soft);margin:0;max-width:60ch;font-size:.94rem;}

/* ---------- inclusions (enthalten / nicht enthalten) ---------- */
.inclusions{display:grid;grid-template-columns:1fr 1fr;gap:36px;}
.inclusions h5{font-family:"Noto Serif KR",serif;font-weight:700;font-size:1rem;margin-bottom:14px;}
.inclusions ul{list-style:none;padding:0;margin:0;display:grid;gap:10px;font-size:.92rem;color:var(--ink-soft);}
.inclusions li{padding-left:24px;position:relative;}
.inclusions .yes li::before{content:"✓";position:absolute;left:0;color:var(--tea);font-weight:700;}
.inclusions .no li::before{content:"–";position:absolute;left:0;color:var(--ink-soft);}
.optional-note{font-size:.85rem;color:var(--ink-soft);font-style:italic;margin-top:8px;}

/* ---------- enquiry form ---------- */
.form-wrap{max-width:640px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;}
.form-field{display:flex;flex-direction:column;gap:6px;}
.form-field.full{grid-column:1/-1;}
.form-field label{font-size:.82rem;font-weight:600;color:var(--ink);}
.form-field input,.form-field select,.form-field textarea{
  font-family:"Noto Sans KR",sans-serif;font-size:.95rem;padding:12px 14px;
  border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);
  color:var(--ink);width:100%;
}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{
  outline:none;border-color:var(--tea);box-shadow:0 0 0 3px rgba(168,87,30,.12);
}
.form-field textarea{min-height:120px;resize:vertical;}
.form-note{font-size:.8rem;color:var(--ink-soft);margin-top:10px;}
.form-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;}
@media (max-width:620px){ .form-row{grid-template-columns:1fr;} }

/* ---------- privacy consent (PIPA style) ---------- */
.consent-box{border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;margin:20px 0 8px;background:var(--paper-alt);}
.consent-table{width:100%;border-collapse:collapse;font-size:.8rem;margin-bottom:12px;}
.consent-table th,.consent-table td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line-soft);vertical-align:top;}
.consent-table th{color:var(--ink-soft);font-weight:600;white-space:nowrap;width:30%;}
.consent-check{display:flex;align-items:flex-start;gap:9px;font-size:.86rem;line-height:1.5;}
.consent-check input[type="checkbox"]{margin-top:3px;width:16px;height:16px;flex-shrink:0;accent-color:var(--tea);}
.consent-check label{cursor:pointer;}
.consent-req{color:#B4342A;font-weight:600;}
.consent-refuse{font-size:.76rem;color:var(--ink-soft);margin-top:8px;line-height:1.5;}

/* ---------- price box ---------- */
.price-box{background:var(--tea-deep);color:#fff;border-radius:var(--radius);padding:32px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;}
.price-box .amount{font-family:"Noto Serif KR",serif;font-weight:700;font-size:1.7rem;}
.price-box .amount small{display:block;font-family:"Noto Sans KR",sans-serif;font-weight:400;font-size:.72rem;opacity:.75;margin-top:4px;}
.price-box .btn.primary{background:var(--jade);border-color:var(--jade);color:#fff;}

/* ---------- sub-hero (inner pages) ---------- */
.sub-hero{padding:36px 0 60px;}
.sub-hero h1{font-size:clamp(2rem,4vw,2.9rem);max-width:18ch;}
.sub-hero p.lede{max-width:56ch;color:var(--ink-soft);margin-top:18px;font-size:1rem;}
.sub-hero-facts{display:flex;gap:26px;flex-wrap:wrap;margin-top:26px;}
.fact{border-top:2px solid var(--jade);padding-top:9px;min-width:120px;}
.fact b{display:block;font-family:"Noto Serif KR",serif;font-weight:700;font-size:1.15rem;}
.fact span{font-size:.74rem;color:var(--ink-soft);}
.sub-hero-figure{margin-top:36px;position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:21/9;
  background:linear-gradient(155deg, rgba(107,55,18,.5), rgba(107,55,18,.08) 60%),
             repeating-linear-gradient(120deg, #C98A4B 0 40px, #6B3712 40px 80px);}
.sub-hero-figure img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;}
.sub-hero-figure .cap{position:absolute;right:20px;bottom:16px;color:#F1EEE4;font-size:.82rem;z-index:2;}

/* ---------- related ---------- */
.related{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.related a{display:block;text-decoration:none;padding:18px;border:1px solid var(--line);border-radius:var(--radius);}
.related a:hover{border-color:var(--jade);}
.related .trip-cat{margin-bottom:6px;}
.related h5{font-size:.95rem;margin-bottom:3px;font-family:"Noto Serif KR",serif;font-weight:700;}
.related span{font-size:.72rem;color:var(--ink-soft);}

/* ---------- values (about page) ---------- */
.values{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.value h4{font-size:1.05rem;margin-bottom:8px;}
.value p{color:var(--ink-soft);font-size:.9rem;margin:0;}
.value .roman{font-family:"Noto Serif KR",serif;font-weight:700;color:var(--jade);font-size:1.15rem;}

/* ---------- footer CTA band ---------- */
.cta-band{position:relative;background:var(--tea-deep);color:#fff;overflow:hidden;}
.cta-band::before{
  content:"";position:absolute;inset:0;opacity:.28;
  background:linear-gradient(90deg, rgba(107,55,18,1) 0%, rgba(107,55,18,.2) 60%),
             linear-gradient(160deg,#C98A4B 0%,#6B3712 100%);
}
.cta-band .wrap{position:relative;z-index:2;padding:52px 32px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;}
.cta-band-features{display:flex;gap:40px;flex-wrap:wrap;}
.cta-band-features .feature h5,.cta-band-features .feature span{color:#fff;}
.cta-band-features .feature span{opacity:.75;}
.cta-band-ask{text-align:right;}
.cta-band-ask h4{color:#fff;font-size:1.15rem;margin-bottom:14px;}
.cta-band .btn.primary{background:var(--jade);border-color:var(--jade);}

.cta-final{background:var(--tea-deep);color:#fff;text-align:center;padding:80px 0;}
.cta-final h2{font-size:clamp(1.8rem,4vw,2.5rem);color:#fff;max-width:16ch;margin:0 auto;}
.cta-final .btn.primary{background:var(--jade);border-color:var(--jade);margin-top:26px;}
.cta-final .contact{margin-top:16px;font-size:.88rem;opacity:.85;}

footer.site{padding:0 0 40px;font-size:.85rem;color:var(--ink-soft);position:relative;}
footer.site::before{content:"";display:block;height:2px;background:linear-gradient(90deg,var(--jade) 0%,var(--line) 40%,transparent 100%);margin-bottom:52px;}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:0;margin-bottom:40px;}
.foot-grid > div{padding:0 28px;border-left:1px solid var(--line-soft);}
.foot-grid > div:first-child{padding-left:0;border-left:none;}
.foot-grid h5{font-family:"Noto Sans KR",sans-serif;font-weight:700;color:var(--ink);margin-bottom:16px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;}
.foot-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:11px;}
.foot-grid a{text-decoration:none;transition:color .15s ease;}
.foot-grid a:hover{color:var(--jade);}
.foot-grid > div:first-child p{font-family:"Noto Serif KR",serif;font-size:.95rem;color:var(--ink);line-height:1.5;}

.sisters-wrap{background:var(--paper-alt);padding:36px 0;margin-bottom:0;}
.sisters-label{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--jade);margin-bottom:20px;}
.sisters{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;}
.sister{background:var(--paper);border-top:2px solid var(--jade);padding:18px 20px;border-radius:0 0 var(--radius) var(--radius);}
.sister b{display:block;font-family:"Noto Sans KR",sans-serif;font-weight:700;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;}
.sister{font-size:.88rem;line-height:1.55;}
.sister a{color:var(--tea);font-weight:600;text-decoration:none;white-space:nowrap;}
.sister a:hover{color:var(--jade);}

.foot-legal{padding-top:28px;border-top:1px solid var(--line-soft);font-size:.78rem;color:var(--ink-soft);line-height:1.7;}
.breadcrumb{font-size:.78rem;color:var(--ink-soft);padding:22px 0 0;}
.breadcrumb a{text-decoration:none;}
.breadcrumb span{color:var(--jade);margin:0 6px;}

@media (max-width:960px){
  .hero-grid{grid-template-columns:1fr;}
  .trips-layout{grid-template-columns:1fr;}
  .trip-grid{grid-template-columns:repeat(2,1fr);}
  .trust-grid{grid-template-columns:1fr;}
  .trust-photo{aspect-ratio:16/9;}
  .trust-copy{padding:32px 32px 0;}
  .trust-features{grid-template-columns:1fr 1fr;padding:32px;}
  .facts-grid{grid-template-columns:1fr 1fr;}
  .related{grid-template-columns:1fr 1fr;}
  .values{grid-template-columns:1fr;}
  .inclusions{grid-template-columns:1fr;}
  .cta-band .wrap{flex-direction:column;text-align:left;}
  .cta-band-ask{text-align:left;}
  .sisters{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr;row-gap:32px;column-gap:24px;}
  .foot-grid > div{border-left:none;padding:0;}
  .foot-grid > div:first-child{grid-column:1/-1;}
}
@media (max-width:620px){
  .feature-strip .wrap{flex-direction:column;}
  .trip-grid{grid-template-columns:1fr;}
  .facts-grid{grid-template-columns:1fr;}
  .related{grid-template-columns:1fr;}
  nav.links{display:none;}
  .quotes{grid-template-columns:1fr;}
  .trust-badge{position:static;margin-top:16px;width:auto;}
  .foot-grid ul{gap:9px;}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;}}
