/* yatcomm.com — tek stil dosyası. Kaynak: onaylı Konsept C */

  :root{
    --bg:#FBF7F0;
    --surface:#FFFFFF;
    --ink:#1F3440;
    --muted:#5E7280;
    --line:#E8DFD2;
    --line-soft:#F1EAE0;
    --sea:#1E7F98;
    --sea-deep:#155E72;
    --sun:#E9A13B;
    --sun-soft:#FBEED7;
    --bgv:#C64B7B;
    --sky1:#FFE0BE;
    --sky2:#EAF4F6;
    --water1:#2E93AC;
    --water2:#155E72;
    --boat:#22394A;
    --chip:#FFFFFF;
    --shadow:0 2px 6px rgba(31,52,64,.07),0 14px 34px rgba(31,52,64,.09);
  }
  @media (prefers-color-scheme: dark){
    :root{
      --bg:#161D2B;
      --surface:#1F2838;
      --ink:#F0EAE0;
      --muted:#9AA7B5;
      --line:#2C3648;
      --line-soft:#242E3F;
      --sea:#4FB8C9;
      --sea-deep:#7ACCD9;
      --sun:#F4B860;
      --sun-soft:#33301F;
      --bgv:#E077A0;
      --sky1:#3A3153;
      --sky2:#1B2434;
      --water1:#173B4C;
      --water2:#101E2C;
      --boat:#0C1520;
      --chip:#243043;
      --shadow:0 2px 6px rgba(0,0,0,.35),0 14px 34px rgba(0,0,0,.4);
    }
  }
  :root[data-theme="dark"]{
    --bg:#161D2B;
    --surface:#1F2838;
    --ink:#F0EAE0;
    --muted:#9AA7B5;
    --line:#2C3648;
    --line-soft:#242E3F;
    --sea:#4FB8C9;
    --sea-deep:#7ACCD9;
    --sun:#F4B860;
    --sun-soft:#33301F;
    --bgv:#E077A0;
    --sky1:#3A3153;
    --sky2:#1B2434;
    --water1:#173B4C;
    --water2:#101E2C;
    --boat:#0C1520;
    --chip:#243043;
    --shadow:0 2px 6px rgba(0,0,0,.35),0 14px 34px rgba(0,0,0,.4);
  }
  :root[data-theme="light"]{
    --bg:#FBF7F0;
    --surface:#FFFFFF;
    --ink:#1F3440;
    --muted:#5E7280;
    --line:#E8DFD2;
    --line-soft:#F1EAE0;
    --sea:#1E7F98;
    --sea-deep:#155E72;
    --sun:#E9A13B;
    --sun-soft:#FBEED7;
    --bgv:#C64B7B;
    --sky1:#FFE0BE;
    --sky2:#EAF4F6;
    --water1:#2E93AC;
    --water2:#155E72;
    --boat:#22394A;
    --chip:#FFFFFF;
    --shadow:0 2px 6px rgba(31,52,64,.07),0 14px 34px rgba(31,52,64,.09);
  }

  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0;background:var(--bg);color:var(--ink);
    font-family:"Seravek","Segoe UI",system-ui,-apple-system,sans-serif;
    line-height:1.65;-webkit-font-smoothing:antialiased;
  }
  .serif{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif}
  .mono{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace}

  .ribbon{
    background:var(--ink);color:var(--bg);
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;
    text-align:center;padding:.5rem 1rem;
  }
  .ribbon b{color:var(--sun);font-weight:600}

  .wrap{max-width:1080px;margin:0 auto;padding:0 1.5rem}

  header.site{
    display:flex;align-items:center;justify-content:space-between;
    padding:1.3rem 0;
  }
  .brand{display:flex;align-items:center;gap:.6rem;font-weight:700;font-size:1.18rem}
  nav.main{display:flex;gap:1.6rem;align-items:center;font-size:.94rem}
  nav.main a{color:var(--muted);text-decoration:none}
  nav.main a:hover,nav.main a:focus-visible{color:var(--ink)}
  nav.main a:focus-visible{outline:2px solid var(--sun);outline-offset:3px;border-radius:3px}
  .lang{font-size:.8rem;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.28rem .8rem}
  .lang b{color:var(--ink)}
  @media(max-width:720px){nav.main a.hide-m{display:none}}

  /* ---- hero ---- */
  .hero{padding:3.4rem 0 0}
  .hero .eyebrow{
    color:var(--bgv);font-size:.85rem;letter-spacing:.06em;
    font-weight:600;margin:0 0 1rem;
  }
  .hero h1{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    font-size:clamp(2.1rem,5vw,3.4rem);
    line-height:1.12;font-weight:600;letter-spacing:.005em;
    margin:0 0 1.15rem;max-width:20ch;text-wrap:balance;
  }
  .hero h1 em{font-style:italic;color:var(--sea)}
  .hero p.lead{font-size:1.1rem;color:var(--muted);max-width:52ch;margin:0 0 1.9rem}
  .cta-row{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:3rem}
  .btn{display:inline-block;text-decoration:none;font-weight:600;font-size:.97rem;padding:.72rem 1.5rem;border-radius:999px}
  .btn.primary{background:var(--sea);color:#FFF}
  .btn.primary:hover{background:var(--sea-deep)}
  :root[data-theme="dark"] .btn.primary,:root:not([data-theme="light"]) .btn.primary{color:#FFF}
  .btn.ghost{color:var(--ink);border:1.5px solid var(--line)}
  .btn.ghost:hover{border-color:var(--muted)}
  .btn:focus-visible{outline:2px solid var(--sun);outline-offset:3px}

  /* hero schematic */
  .schematic{
    border:1px solid var(--line);
    border-radius:18px;
    background:var(--surface);
    box-shadow:var(--shadow);
    overflow:hidden;
  }
  .schematic .bar{
    display:flex;justify-content:space-between;align-items:center;
    padding:.6rem 1.1rem;
    border-bottom:1px solid var(--line-soft);
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  }
  .schematic .bar .dot{color:var(--sun)}
  .schematic svg{display:block;width:100%;height:auto}
  .node{fill:var(--sun)}
  .node-ring{fill:none;stroke:var(--sun);opacity:.5}
  .s-line{stroke:var(--sea);fill:none}
  .s-dash{stroke:var(--sea);fill:none;stroke-dasharray:4 4}
  .s-faint{stroke:var(--line);fill:none}
  .s-label{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:11px;fill:var(--muted);letter-spacing:.08em}
  .s-label.strong{fill:var(--ink);font-weight:600}
  .s-body{font-family:"Seravek","Segoe UI",system-ui,sans-serif;font-size:12.5px;fill:var(--ink)}
  .s-body.dim{fill:var(--muted)}
  .hull{stroke:var(--ink);fill:none;stroke-width:1.6}
  .module-box{fill:var(--sun-soft);stroke:var(--sun);stroke-width:1.2}
  .grid-line{stroke:var(--line-soft)}
  @media (prefers-reduced-motion: no-preference){
    .pulse{animation:pulse 2.6s ease-out infinite}
    @keyframes pulse{
      0%{r:6;opacity:.55}
      70%{r:16;opacity:0}
      100%{r:16;opacity:0}
    }
    .flow{stroke-dasharray:4 4;animation:flow 1.6s linear infinite}
    @keyframes flow{to{stroke-dashoffset:-16}}
  }
  .theme-btn{
    cursor:pointer;background:none;border:1px solid var(--line);border-radius:999px;
    color:var(--ink);font-size:.95rem;line-height:1;padding:.34rem .7rem;
  }
  .theme-btn:hover{border-color:var(--muted)}
  .theme-btn:focus-visible{outline:2px solid var(--sun);outline-offset:3px}

  /* hero: schematic card + app card */
  .hero-duo{
    display:grid;grid-template-columns:1.55fr 1fr;gap:1.3rem;align-items:stretch;
  }
  .hero-duo .schematic{display:flex;flex-direction:column}
  .hero-duo .schematic svg{margin:auto 0}
  .schematic svg.sch-mobile{display:none}
  @media(max-width:720px){
    .hero-duo{grid-template-columns:1fr}
    .schematic svg.sch-desktop{display:none}
    .schematic svg.sch-mobile{display:block}
  }
  .app-card{position:relative}
  .notif-layer{
    position:absolute;left:0;right:0;top:50px;
    display:flex;flex-direction:column;gap:.6rem;align-items:center;
    pointer-events:none;
  }
  /* phone-real push notification */
  :root{--ok:#2E8B57;--glass:rgba(255,255,255,.8);--glass-line:rgba(31,52,64,.1)}
  @media (prefers-color-scheme: dark){:root{--ok:#5BBA8A;--glass:rgba(34,43,59,.82);--glass-line:rgba(255,255,255,.12)}}
  :root[data-theme="dark"]{--ok:#5BBA8A;--glass:rgba(34,43,59,.82);--glass-line:rgba(255,255,255,.12)}
  :root[data-theme="light"]{--ok:#2E8B57;--glass:rgba(255,255,255,.8);--glass-line:rgba(31,52,64,.1)}
  .notif{
    display:flex;gap:.7rem;align-items:flex-start;
    background:var(--glass);
    -webkit-backdrop-filter:blur(16px) saturate(1.4);
    backdrop-filter:blur(16px) saturate(1.4);
    border:1px solid var(--glass-line);
    border-radius:19px;
    box-shadow:0 8px 28px rgba(15,30,45,.18);
    padding:.7rem .85rem;
    width:100%;
    font-family:-apple-system,system-ui,"Segoe UI",sans-serif;
  }
  .notif-layer .notif{width:88%;max-width:300px}
  .n-ico{
    width:36px;height:36px;border-radius:9px;flex-shrink:0;
    background:linear-gradient(150deg,var(--sea),var(--sea-deep));
    display:flex;align-items:center;justify-content:center;
    box-shadow:inset 0 -6px 10px rgba(0,0,0,.12);
  }
  .n-ico.warn{background:linear-gradient(150deg,var(--bgv),#8F2F56)}
  .n-ico.sun{background:linear-gradient(150deg,var(--sun),#C07A18)}
  .n-ico svg{width:22px;height:22px;display:block}
  .n-content{flex:1;min-width:0}
  .n-row{display:flex;justify-content:space-between;align-items:baseline;gap:.6rem}
  .n-title{font-size:.84rem;font-weight:650;color:var(--ink);letter-spacing:-.01em}
  .n-time{font-size:.7rem;color:var(--muted);flex-shrink:0}
  .n-body{font-size:.82rem;line-height:1.35;color:var(--ink);opacity:.85;margin-top:.08rem}
  .n-body .ok{color:var(--ok)}
  @media (prefers-reduced-motion: no-preference){
    .notif-layer .notif{animation:drop .7s ease both}
    .notif-layer .notif:nth-of-type(2){animation-delay:1s}
    @keyframes drop{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
  }

  /* benefits section */
  .benefit-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
  @media(max-width:720px){.benefit-grid{grid-template-columns:1fr}}
  .benefit-card{
    background:var(--surface);border:1px solid var(--line);border-radius:16px;
    padding:1.5rem 1.5rem 1.6rem;box-shadow:var(--shadow);
  }
  .n-scene{
    background:linear-gradient(140deg,var(--sky1),var(--sky2));
    border:1px solid var(--line);
    border-radius:14px;
    padding:1rem .95rem;
    margin-bottom:1.1rem;
  }
  .benefit-card h3{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:0 0 .45rem;font-size:1.18rem;font-weight:600;
  }
  .benefit-card p{margin:0;color:var(--muted);font-size:.94rem}
  .more-grid{
    display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
    gap:1.3rem;margin-top:1.5rem;
  }
  .more{
    background:var(--surface);border:1px solid var(--line);border-radius:14px;
    padding:1.15rem 1.2rem;
  }
  .more h4{
    margin:0 0 .5rem;font-size:.92rem;font-weight:650;
    display:flex;align-items:center;gap:.5rem;
  }
  .more h4::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--sun);flex-shrink:0}
  .more ul{margin:0;padding-left:1rem;font-size:.86rem;color:var(--muted)}
  .more ul li{margin:.3rem 0}
  .more ul li::marker{color:var(--sea)}

  /* ---- sections ---- */
  section{padding:4.4rem 0 0}
  .sec-head{margin-bottom:2.2rem;max-width:60ch}
  .sec-head .tag{
    color:var(--bgv);font-weight:600;font-size:.85rem;letter-spacing:.06em;
    display:block;margin-bottom:.4rem;
  }
  .sec-head h2{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    font-size:clamp(1.5rem,3vw,2.15rem);font-weight:600;
    margin:0;line-height:1.2;text-wrap:balance;
  }
  .sec-head p{color:var(--muted);margin:.7rem 0 0}

  .feat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.3rem}
  @media(max-width:720px){.feat-grid{grid-template-columns:1fr}}
  .feat{
    background:var(--surface);border:1px solid var(--line);border-radius:16px;
    padding:1.7rem 1.6rem;box-shadow:var(--shadow);
  }
  .feat .glyph{
    width:44px;height:44px;border-radius:12px;
    background:var(--sun-soft);color:var(--sun);
    display:flex;align-items:center;justify-content:center;
  }
  .feat .glyph svg{width:26px;height:26px}
  .feat h3{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:1rem 0 .45rem;font-size:1.18rem;font-weight:600;
  }
  .feat p{margin:0;color:var(--muted);font-size:.95rem}

  .steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}
  @media(max-width:720px){.steps{grid-template-columns:1fr}}
  .step{
    background:var(--surface);border:1px solid var(--line);border-radius:16px;
    padding:1.5rem;box-shadow:var(--shadow);
  }
  .step .num{
    width:34px;height:34px;border-radius:50%;
    background:var(--sea);color:#FFF;font-weight:700;font-size:.95rem;
    display:flex;align-items:center;justify-content:center;margin-bottom:.9rem;
  }
  .step h3{margin:0 0 .4rem;font-size:1.05rem;font-weight:650}
  .step p{margin:0;color:var(--muted);font-size:.93rem}

  .spec-wrap{
    border:1px solid var(--line);border-radius:16px;background:var(--surface);
    overflow-x:auto;box-shadow:var(--shadow);
  }
  table.specs{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px}
  table.specs td{padding:.8rem 1.3rem;border-top:1px solid var(--line-soft);vertical-align:top}
  table.specs tr:first-child td{border-top:0}
  table.specs td.k{
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.76rem;letter-spacing:.08em;text-transform:uppercase;
    color:var(--muted);width:38%;padding-top:.95rem;
  }
  table.specs td.v{font-variant-numeric:tabular-nums}

  .proj-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
  @media(max-width:720px){.proj-grid{grid-template-columns:1fr}}
  .proj{
    background:var(--surface);border:1px solid var(--line);border-radius:16px;
    padding:1.6rem;box-shadow:var(--shadow);
  }
  .proj .date{color:var(--bgv);font-size:.8rem;font-weight:600;letter-spacing:.05em}
  .proj h3{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:.45rem 0 .5rem;font-size:1.15rem;font-weight:600;
  }
  .proj p{margin:0;color:var(--muted);font-size:.94rem}

  /* contact */
  .contact-card{
    margin-top:4.6rem;
    background:linear-gradient(160deg,var(--sky1),var(--sky2));
    border:1px solid var(--line);
    border-radius:22px;padding:2.6rem 2.4rem;
    display:grid;grid-template-columns:1.2fr 1fr;gap:2.5rem;align-items:start;
    box-shadow:var(--shadow);
  }
  @media(max-width:720px){.contact-card{grid-template-columns:1fr;padding:1.8rem 1.4rem}}
  .contact-card h2{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:.2rem 0 .8rem;font-size:1.7rem;font-weight:600;
  }
  .contact-card .tag{color:var(--bgv);font-weight:600;font-size:.85rem}
  .contact-card p{color:var(--muted);max-width:44ch;margin:0}
  .c-list{list-style:none;margin:0;padding:0;font-size:.95rem}
  .c-list li{display:flex;gap:.8rem;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--line)}
  .c-list li:last-child{border-bottom:0}
  .c-list .k{
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
    min-width:5.5rem;
  }
  .c-list a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--sun)}

  footer.site{
    margin-top:2.6rem;padding:1.5rem 0 2.3rem;
    display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;
    font-size:.82rem;color:var(--muted);
    border-top:1px solid var(--line);
  }

  .reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}
  .reveal.in{opacity:1;transform:none}
  @media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}}

/* ---- iç sayfalar ---- */
.crumb{
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
    margin:0 0 .8rem;
  }
  .crumb b{color:var(--sea);font-weight:600}
  .page-head h1{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:0 0 .6rem;font-size:clamp(1.7rem,3.6vw,2.4rem);font-weight:600;line-height:1.15;text-wrap:balance;
  }
  .page-head .sub{color:var(--muted);max-width:60ch;margin:0 0 2.2rem;font-size:1rem}

  /* cards & shared */
  .card{
    background:var(--surface);border:1px solid var(--line);border-radius:16px;
    box-shadow:var(--shadow);
  }
  .meta-row{
    display:flex;gap:1.2rem;flex-wrap:wrap;
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);
  }
  .meta-row .hl{color:var(--bgv)}

  /* ---- projects page ---- */
  .proj-detail{padding:1.8rem;margin-bottom:1.5rem}
  .proj-detail h2{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:.5rem 0 .8rem;font-size:1.5rem;font-weight:600;
  }
  .proj-detail p.desc{color:var(--muted);max-width:64ch;margin:0 0 1.4rem;font-size:.95rem}
  .io-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;margin-bottom:1.4rem}
  @media(max-width:720px){.io-grid{grid-template-columns:1fr}}
  .io-box{border:1px solid var(--line-soft);border-radius:12px;overflow:hidden}
  .io-box .hd{
    padding:.5rem .9rem;background:var(--line-soft);
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
  }
  .io-box ul{margin:0;padding:.6rem 1rem .7rem 1.9rem;font-size:.88rem}
  .io-box li{margin:.25rem 0}
  .io-box li::marker{color:var(--sun)}
  .media-row{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem}
  @media(max-width:720px){.media-row{grid-template-columns:1fr}}
  .ph{
    border:1.5px dashed var(--line);border-radius:12px;
    min-height:150px;display:flex;flex-direction:column;gap:.3rem;
    align-items:center;justify-content:center;color:var(--muted);
    font-size:.85rem;text-align:center;padding:1rem;
  }
  .ph .big{font-size:1.6rem;opacity:.7}
  .proj-mini{
    padding:1.4rem 1.6rem;display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap;
  }
  .proj-mini h3{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:.3rem 0 .2rem;font-size:1.12rem;font-weight:600;
  }
  .proj-mini p{margin:0;color:var(--muted);font-size:.88rem}
  .link{
    color:var(--sea);font-weight:600;text-decoration:none;font-size:.9rem;white-space:nowrap;
    border-bottom:2px solid var(--sun);cursor:pointer;
  }

  /* ---- article page ---- */
  .article{max-width:680px}
  .article .lead{font-size:1.05rem;color:var(--muted)}
  .article h2{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    font-size:1.35rem;font-weight:600;margin:2rem 0 .6rem;
  }
  .article p{margin:.8rem 0;font-size:.97rem}
  .article ul{font-size:.95rem}
  .article li{margin:.35rem 0}
  .article li::marker{color:var(--sea)}
  .callout{
    border-left:3px solid var(--sun);background:var(--sun-soft);
    border-radius:0 12px 12px 0;padding:.9rem 1.1rem;margin:1.4rem 0;
    font-size:.92rem;
  }
  .art-media{margin:1.6rem 0}
  .other{margin-top:3rem;padding-top:1.4rem;border-top:1px solid var(--line)}
  .other h3{
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
    margin:0 0 1rem;font-weight:600;
  }
  .other-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
  @media(max-width:720px){.other-grid{grid-template-columns:1fr}}
  .other-card{padding:1.1rem 1.3rem}
  .other-card .d{font-size:.74rem;color:var(--bgv);font-weight:600;letter-spacing:.05em}
  .other-card h4{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:.3rem 0 .2rem;font-size:1.05rem;font-weight:600;
  }
  .other-card p{margin:0;color:var(--muted);font-size:.86rem}

  /* ---- contact page ---- */
  .contact-cols{display:grid;grid-template-columns:1fr 1.15fr;gap:1.5rem;align-items:start}
  @media(max-width:720px){.contact-cols{grid-template-columns:1fr}}
  .c-info{padding:1.6rem}
  .c-list{list-style:none;margin:0 0 1.4rem;padding:0;font-size:.95rem}
  .c-list li{display:flex;gap:.8rem;align-items:baseline;padding:.6rem 0;border-bottom:1px solid var(--line-soft)}
  .c-list li:last-child{border-bottom:0}
  .c-list .k{
    font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
    min-width:5.2rem;
  }
  .c-list a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--sun)}
  .map{
    border-radius:12px;border:1px solid var(--line);overflow:hidden;background:var(--line-soft);
  }
  .map svg{display:block;width:100%;height:auto}
  .m-label{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:11px;fill:var(--muted);letter-spacing:.08em}
  .form{padding:1.6rem}
  .form h2{
    font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
    margin:0 0 1.2rem;font-size:1.35rem;font-weight:600;
  }
  .frow{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
  @media(max-width:720px){.frow{grid-template-columns:1fr}}
  .field{margin-bottom:1rem}
  .field label{
    display:block;font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;
    font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);
    margin-bottom:.35rem;
  }
  .field input,.field select,.field textarea{
    width:100%;padding:.65rem .8rem;border:1px solid var(--line);border-radius:9px;
    background:var(--bg);color:var(--ink);font-family:inherit;font-size:.93rem;
  }
  .field textarea{min-height:110px;resize:vertical}
  .field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--sun);outline-offset:1px;border-color:var(--sun)}
  .btn-submit{
    display:inline-block;cursor:pointer;border:none;font-family:inherit;
    background:var(--sea);color:#fff;font-weight:600;font-size:.95rem;
    padding:.7rem 1.6rem;border-radius:999px;
  }
  .btn-submit:hover{background:var(--sea-deep)}
  .form .note{font-size:.8rem;color:var(--muted);margin:.7rem 0 0}

  
/* ---- sitewide extras ---- */
nav.main a.on{color:var(--ink);font-weight:600;border-bottom:2px solid var(--sun)}
a.card-link{text-decoration:none;color:inherit;display:block;transition:transform .15s ease}
a.card-link:hover{transform:translateY(-2px)}
main{display:block}
.page-pad{padding-top:2.4rem}
.form-status{font-size:.85rem;color:var(--ok);margin-top:.6rem;display:none}
