/* Conditions page — same grammar, offer register */
.site-head.light-page{background:rgba(242,246,245,.95);color:var(--ink);border-color:var(--line);backdrop-filter:blur(14px)}
.site-head.light-page::before{display:none}
.site-head.light-page .nav-cond{border-color:var(--line-strong)}
.site-head.light-page .brand-mark{color:var(--cyan-deep)}
.cond-hero{padding-top:clamp(130px,15vh,170px);padding-bottom:clamp(60px,8vw,110px);background:var(--paper);overflow:hidden}
.cond-hero .wrap{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(40px,6vw,90px);align-items:center}
.cond-hero h1{font-size:clamp(38px,4.5vw,64px);line-height:1.02;letter-spacing:-.04em;max-width:15ch}
.cond-hero h1 em{display:block;font-style:normal;color:var(--cyan-deep);font-weight:400}
.cond-hero .lead{margin-top:26px}
.cond-hero .meta-line{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:26px}
.collage{position:relative;height:clamp(420px,48vw,620px);min-width:0}
.collage figure{position:absolute;margin:0;border-radius:16px;overflow:hidden;box-shadow:0 30px 70px -34px rgba(6,26,34,.5);border:1px solid rgba(6,26,34,.18);background:#04141b;animation:floaty 9s ease-in-out infinite}
.collage img{width:100%;height:100%;object-fit:cover;display:block}
.collage .c1{width:58%;height:62%;left:0;top:2%;transform:rotate(-4deg)}
.collage .c2{width:52%;height:48%;right:0;top:32%;transform:rotate(3deg);animation-delay:-2.5s}
.collage .c3{width:40%;height:38%;left:16%;bottom:0;transform:rotate(-2deg);animation-delay:-4.5s}
.stamp{position:absolute;right:2%;top:4%;width:118px;height:118px;border:1px solid var(--cyan-deep);border-radius:50%;display:grid;place-items:center;text-align:center;color:var(--cyan-deep);font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;line-height:1.5;transform:rotate(8deg);background:rgba(242,246,245,.72);backdrop-filter:blur(4px)}
@keyframes floaty{0%,100%{translate:0 0}50%{translate:0 -12px}}
@media(prefers-reduced-motion:reduce){.collage figure{animation:none}}
.cond-band{background:var(--ink);color:var(--ice);padding:clamp(50px,6vw,78px) 0}
.cond-band .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(30px,5vw,70px);align-items:start}
.cond-band h2{font-size:clamp(25px,3vw,38px);max-width:16ch}
.cond-counts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin-top:0;padding-top:36px}
.cond-count{padding:0 13px;border-left:1px solid rgba(220,237,242,.16)}
.cond-count:first-child{padding-left:0;border-left:0}
.cond-count b{display:flex;align-items:baseline;gap:2px;white-space:nowrap;font-size:clamp(22px,2.3vw,32px);line-height:1;font-weight:500;color:#fff;font-variant-numeric:tabular-nums}
.cond-count b small{font-size:.45em;color:var(--cyan)}
.cond-count span{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);margin-top:12px}
.cond-count p{font-size:11.5px;line-height:1.45;color:rgba(220,237,242,.55);margin:7px 0 0}
.cond-band .note{font-size:12px;color:rgba(220,237,242,.45);margin:18px 0 0;grid-column:1/-1}
/* prices */
.pkg-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(14px,2vw,22px);align-items:stretch}
.pkg{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px 26px;display:flex;flex-direction:column;position:relative;transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.pkg:hover{transform:translateY(-5px);box-shadow:0 28px 60px -34px rgba(6,26,34,.35)}
.pkg.featured{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan) inset}
.pkg .badge{position:absolute;right:16px;top:16px;background:var(--cyan);color:#fff;font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;padding:6px 9px;border-radius:999px}
.pkg .pkg-kicker{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--cyan-deep);margin-bottom:14px}
.pkg h3{font-size:clamp(20px,1.8vw,25px);margin-bottom:6px;letter-spacing:-.03em}
.pkg.featured h3{padding-right:86px}
.pkg .situation{font-size:14px;line-height:1.55;color:var(--muted);margin:0 0 18px;min-height:44px}
.pkg .price{display:flex;align-items:baseline;gap:8px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-bottom:18px}
.pkg .price small{font-family:var(--mono);font-size:9px;letter-spacing:.14em;color:var(--muted)}
.pkg .price .amount{font-size:clamp(34px,3.4vw,46px);line-height:1;font-weight:600;letter-spacing:-.05em}
.pkg .price .cur{font-family:var(--font);font-size:clamp(24px,2.4vw,32px);font-style:normal;letter-spacing:-.04em;color:var(--ink);margin-left:-5px}
.pkg-list{list-style:none;padding:0;margin:0 0 20px;display:flex;flex-direction:column;gap:11px}
.pkg-list li{font-size:12.5px;line-height:1.5;color:#33484f;padding-left:0}
.pkg-list b{display:block;font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan-deep);font-weight:400;margin-bottom:2px}
.pkg .btn{margin-top:auto;justify-content:center}
.pkg-note{font-size:12px;color:var(--muted);margin:18px 0 0;text-align:center}
/* compare */
.table-scroll{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid var(--line);border-radius:16px;background:#fff}
table.compare{width:100%;min-width:720px;border-collapse:collapse;font-size:13px}
table.compare th,table.compare td{padding:15px 16px;text-align:center;border-bottom:1px solid var(--line);vertical-align:middle}
table.compare th:first-child,table.compare td:first-child{text-align:left;width:30%;color:#2d434a;font-weight:400;position:sticky;left:0;background:#fff;z-index:2;border-right:1px solid var(--line)}
table.compare thead th{background:var(--paper-2);font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:400;line-height:1.5}
table.compare thead th.mid{background:#dceff3;color:var(--ink)}
table.compare thead th:first-child{background:var(--paper-2)}
table.compare thead th b{display:block;font-family:var(--font);font-size:16px;letter-spacing:-.02em;text-transform:none;color:var(--ink);margin-bottom:3px}
table.compare tbody tr:last-child td{border-bottom:0}
table.compare tbody tr:hover td{background:#f7fbfb}
table.compare tbody tr:hover td:first-child{background:#f7fbfb}
table.compare td.mid{background:#f2fafb}
.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--cyan-deep)}
.dash{display:inline-block;width:10px;height:1px;background:var(--line-strong);vertical-align:middle}
.sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* photo band */
.photo-band{position:relative;height:clamp(320px,42vw,560px);overflow:hidden;background:#04141b;display:flex;align-items:flex-end}
.photo-band img{position:absolute;inset:-8% 0;width:100%;height:116%;object-fit:cover;opacity:.9}
.photo-band::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,12,16,.85),rgba(3,12,16,.15) 60%,rgba(3,12,16,.55))}
.photo-band .wrap{position:relative;z-index:2;padding-bottom:clamp(28px,4vw,48px);color:#fff}
.photo-band .eyebrow{color:rgba(220,237,242,.7);margin-bottom:14px}
.photo-band .cap{font-size:clamp(24px,3.4vw,46px);letter-spacing:-.03em;line-height:1.05;max-width:20ch}
/* seo cards */
.seo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:min(2vw,24px)}
.seo-card{border-top:1px solid var(--line-strong);padding:22px 0 0}
.seo-card .ic{width:30px;height:30px;color:var(--cyan-deep);margin-bottom:16px}
.seo-card h3{font-size:19px;margin-bottom:10px}
.seo-card p{font-size:13.5px;line-height:1.6;color:#3a4f56;margin:0}
.term{border-bottom:1px dotted var(--cyan-deep);color:inherit;cursor:pointer}
.term:hover{color:var(--cyan-deep)}
.reserve{margin-top:28px;padding:16px 18px;border-left:2px solid var(--cyan);background:rgba(26,159,196,.06);font-size:12.5px;line-height:1.55;color:#40555c;max-width:none}
/* process */
.process{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(20px,4vw,54px);margin-top:40px}
.process .line{position:absolute;left:0;right:0;top:15px;height:1px;background:var(--line-strong);transform:scaleX(0);transform-origin:left;transition:transform 1.6s var(--ease)}
.process.in .line{transform:scaleX(1)}
.step{position:relative;padding-top:0}
.step .dot{position:relative;z-index:2;width:9px;height:9px;border-radius:50%;background:var(--cyan);display:block;margin-bottom:24px;box-shadow:0 0 0 5px var(--paper)}
.step b{font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--cyan-deep);display:block;margin-bottom:8px}
.step h3{font-size:clamp(21px,2vw,27px);margin-bottom:10px}
.step p{font-size:13.5px;line-height:1.6;color:var(--muted);margin:0;max-width:34ch}
/* faq */
.faq-group{margin-top:44px}
.faq-group > h3{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--cyan-deep);margin:0 0 8px;font-weight:400}
details.q{border-top:1px solid var(--line)}
details.q:last-child{border-bottom:1px solid var(--line)}
details.q summary{list-style:none;cursor:pointer;padding:18px 44px 18px 0;position:relative;font-size:16.5px;letter-spacing:-.01em;line-height:1.4}
details.q summary::-webkit-details-marker{display:none}
details.q summary::after{content:"";position:absolute;right:8px;top:25px;width:12px;height:12px;border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);transform:rotate(45deg);transition:transform .35s}
details.q[open] summary::after{transform:rotate(225deg)}
details.q .a{padding:0 44px 22px 0;font-size:14px;line-height:1.65;color:#3c5158;max-width:78ch}
details.q .a p:last-child{margin-bottom:0}
details.term-def{border-top:1px solid var(--line)}
details.term-def:last-child{border-bottom:1px solid var(--line)}
details.term-def summary{list-style:none;cursor:pointer;padding:16px 40px 16px 0;position:relative;font-size:16px;font-weight:500}
details.term-def summary::-webkit-details-marker{display:none}
details.term-def summary::after{content:"+";position:absolute;right:8px;top:13px;font-family:var(--mono);font-size:16px;color:var(--cyan-deep);transition:transform .3s}
details.term-def[open] summary::after{content:"−"}
details.term-def .a{padding:0 30px 20px 0;font-size:13.5px;line-height:1.65;color:#3c5158;max-width:76ch}
details.term-def .a em{display:block;font-style:italic;color:var(--ink);margin-bottom:7px;font-size:14.5px}
/* final */
.call{position:relative;min-height:clamp(520px,70vh,720px);display:flex;align-items:center;overflow:hidden;background:#04141b;color:#fff}
.call img.bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.65}
.call .veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,12,16,.92),rgba(3,12,16,.55) 60%,rgba(3,12,16,.4))}
.call .wrap{position:relative;z-index:2;padding-top:70px;padding-bottom:70px}
.call h2{font-size:clamp(34px,5.2vw,68px);max-width:17ch;letter-spacing:-.04em;margin-bottom:20px}
.call p{font-size:16px;line-height:1.6;color:rgba(220,237,242,.78);max-width:52ch;margin-bottom:26px}
.call .mail{font-family:var(--mono);font-size:11px;letter-spacing:.12em;color:var(--cyan);display:inline-block;margin-bottom:24px;border-bottom:1px solid rgba(26,159,196,.4);padding-bottom:4px}
/* footer cond */
.cond-foot{background:#04141b;color:rgba(220,237,242,.55);padding:40px 0 28px;border-top:1px solid rgba(220,237,242,.12)}
.cond-foot .wrap{display:grid;grid-template-columns:1fr auto;gap:26px;align-items:start}
.cond-foot p{font-size:11.5px;line-height:1.7;margin:0;max-width:80ch}
.cond-foot .sig{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:rgba(220,237,242,.45)}
.cond-foot .rights{grid-column:1/-1;font-size:10px;line-height:1.6;color:rgba(220,237,242,.52);border-top:1px solid rgba(220,237,242,.12);padding-top:18px;margin-top:8px}
@media(max-width:1100px){
  .cond-counts{grid-template-columns:repeat(5,minmax(0,1fr))}
  .cond-count p{display:none}
}
@media(max-width:900px){
  .cond-counts{padding-top:0}
  .cond-hero .wrap{grid-template-columns:1fr;gap:44px}
  .cond-hero{padding-top:110px}
  .collage{height:460px;max-width:560px}
  .cond-band .wrap{grid-template-columns:1fr}
  .cond-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 0}
  .cond-count:nth-child(4){border-left:0;padding-left:0}
  .pkg-grid{grid-template-columns:1fr;gap:16px}
  .pkg .situation{min-height:0}
  .seo-grid{grid-template-columns:1fr;gap:26px}
  .process{grid-template-columns:1fr;gap:30px}
  .process .line{left:4px;top:0;bottom:0;width:1px;height:auto;right:auto;transform:scaleY(0);transform-origin:top}
  .process.in .line{transform:scaleY(1)}
  .step{padding-left:26px}
  .step .dot{position:absolute;left:0;top:4px;margin:0}
  .cond-foot .wrap{grid-template-columns:1fr}
}
@media(max-width:720px){
  .cond-hero h1{font-size:clamp(38px,10.5vw,52px)}
  .collage{height:400px}
  .collage .c1{width:64%;height:60%}
  .collage .c2{width:56%;height:44%}
  .collage .c3{width:42%;height:36%}
  .stamp{width:92px;height:92px;font-size:8px;right:0;top:2%}
  .cond-counts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cond-count{padding:14px 14px 14px 0;border-left:0;border-top:1px solid rgba(220,237,242,.14)}
  .cond-count:nth-child(even){padding-left:16px;border-left:1px solid rgba(220,237,242,.14)}
  .cond-count:nth-child(-n+2){border-top:0}
  .cond-count:nth-child(4){padding-left:16px;border-left:1px solid rgba(220,237,242,.14)}
  .cond-count:last-child{grid-column:1/-1;border-left:0;padding-left:0}
  .pkg{padding:22px 18px}
  .call{min-height:0;padding:60px 0}
}

.scroll-hint{display:none;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 10px}
@media(max-width:900px){.scroll-hint{display:block}}
@media(max-width:720px){
  .cond-count p{display:block;font-size:11px;line-height:1.45;margin-top:6px}
  .cond-hero h1{font-size:clamp(34px,9.8vw,40px)}
  .cond-hero .lead{font-size:15.5px;line-height:1.55;margin-bottom:14px}
  .cond-hero .hero-actions{margin-top:22px}
}
@media(max-height:760px) and (min-width:901px){
  .cond-hero{padding-top:104px;padding-bottom:54px}
  .cond-hero h1{font-size:clamp(34px,4vw,52px)}
  .cond-hero .lead{font-size:15.5px;line-height:1.52;margin-top:18px;margin-bottom:12px}
  .collage{height:470px}
}
