.page-contact{
  --cc-glow:rgba(45,226,230,.22);
  --cc-warm:rgba(255,107,44,.16);
  --cc-cut:16px;
  position:relative;
  color:var(--mist);
  font-family:var(--font-body);
  background:
    radial-gradient(circle at 90% 2%, var(--cc-glow), transparent 46%),
    radial-gradient(circle at 2% 74%, var(--cc-warm), transparent 42%),
    linear-gradient(180deg, var(--deep) 0%, var(--deep-2) 100%);
  padding-bottom:clamp(1.5rem,4vw,3rem);
  overflow-x:clip;
}
.page-contact .cc-crumbs{padding-top:clamp(.9rem,3vw,1.6rem);}
.page-contact .cc-hero{padding:clamp(1.4rem,4vw,2.6rem) 0 clamp(2rem,5vw,3.5rem);}
.page-contact .cc-hero__grid{display:grid;gap:clamp(1.6rem,4vw,2.8rem);}
.page-contact .cc-hero__title{
  font-family:var(--font-display);
  font-size:clamp(1.9rem,7.2vw,3.5rem);
  line-height:1.1;
  letter-spacing:.02em;
  margin:.2rem 0 0;
  color:var(--mist);
}
.page-contact .cc-hero__intro{
  margin:1rem 0 0;
  font-size:clamp(.95rem,2.6vw,1.05rem);
  line-height:1.75;
  color:var(--mist);
  max-width:60ch;
}
.page-contact .cc-lines{display:grid;gap:.85rem;margin-top:1.6rem;}
.page-contact .cc-line{
  display:grid;
  gap:.35rem;
  padding:.95rem 1rem 1rem;
  border-left:3px solid var(--cyan);
  background:linear-gradient(100deg, rgba(45,226,230,.14), rgba(6,26,43,0) 78%);
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%);
}
.page-contact .cc-line--phone{
  border-left-color:var(--orange);
  background:linear-gradient(100deg, rgba(255,107,44,.16), rgba(6,26,43,0) 78%);
}
.page-contact .cc-line__label{
  font-size:.78rem;
  letter-spacing:.14em;
  color:var(--slate);
  text-transform:uppercase;
}
.page-contact .cc-line__value{
  font-family:var(--font-mono);
  font-size:clamp(1rem,4.2vw,1.5rem);
  font-weight:700;
  color:var(--ice);
  text-decoration:none;
  overflow-wrap:anywhere;
  line-height:1.3;
}
.page-contact .cc-line__value--lg{font-size:clamp(1.7rem,8vw,2.9rem);letter-spacing:.01em;color:var(--mist);}
.page-contact .cc-line__value:hover{color:var(--cyan);}
.page-contact .cc-line__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;margin-top:.35rem;}
.page-contact .cc-copy{
  font-family:var(--font-body);
  font-size:.8rem;
  font-weight:600;
  padding:.42rem .85rem;
  color:var(--deep);
  background:var(--cyan);
  border:0;
  cursor:pointer;
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - 8px), calc(100% - 8px) 100%, 0 100%);
}
.page-contact .cc-line--phone .cc-copy{background:var(--orange);}
.page-contact .cc-copy:hover{filter:brightness(1.08);}
.page-contact .cc-copy:focus-visible{outline:2px solid var(--ice);outline-offset:2px;}
.page-contact .cc-line__hint{font-size:.78rem;color:var(--slate);}
.page-contact .cc-chips{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.2rem;}
.page-contact .cc-jump{
  display:flex;
  flex-wrap:wrap;
  gap:.45rem;
  margin-top:1.5rem;
  padding-top:1.1rem;
  border-top:1px solid var(--line);
}
.page-contact .cc-jump__link{
  display:inline-flex;
  align-items:center;
  padding:.4rem .8rem;
  border:1px solid var(--line-strong);
  border-radius:999px;
  font-size:.8rem;
  color:var(--ice);
  text-decoration:none;
  transition:background .18s ease, color .18s ease, border-color .18s ease;
}
.page-contact .cc-jump__link:hover{background:rgba(45,226,230,.14);border-color:var(--cyan);color:var(--mist);}
.page-contact .cc-hero__visual{position:relative;}
.page-contact .cc-figure{position:relative;}
.page-contact .media-frame img{display:block;width:100%;height:100%;object-fit:cover;}
.page-contact .cc-now{margin-top:1rem;padding:1rem 1.1rem;}
.page-contact .cc-now__list{list-style:none;margin:.4rem 0 0;padding:0;display:grid;gap:.55rem;}
.page-contact .cc-now__list li{
  display:grid;
  grid-template-columns:minmax(6.5rem,auto) 1fr;
  gap:.7rem;
  align-items:baseline;
  font-size:.82rem;
  color:var(--mist);
  border-bottom:1px dashed var(--line);
  padding-bottom:.5rem;
}
.page-contact .cc-now__list li:last-child{border-bottom:0;padding-bottom:0;}
.page-contact .cc-now__list .num{font-family:var(--font-mono);color:var(--cyan);font-weight:700;font-size:.86rem;}

.page-contact .section{scroll-margin-top:5.5rem;}
.page-contact .cc-channels{padding-top:clamp(2rem,5vw,3.5rem);}
.page-contact .cc-channel-grid{display:grid;gap:var(--gap);margin-top:1.6rem;}
.page-contact .cc-channel{padding:1.2rem 1.15rem 1.35rem;display:flex;flex-direction:column;gap:.7rem;align-items:flex-start;}
.page-contact .cc-channel--phone{border-top:2px solid var(--orange);}
.page-contact .cc-channel__title{
  font-family:var(--font-display);
  font-size:1.1rem;
  line-height:1.35;
  margin:0;
  color:var(--mist);
  letter-spacing:.02em;
}
.page-contact .cc-channel__text{margin:0;font-size:.92rem;line-height:1.7;color:var(--mist);}
.page-contact .cc-channel__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.4rem;
  font-size:.85rem;
  color:var(--slate);
}
.page-contact .cc-channel__list li{position:relative;padding-left:1rem;}
.page-contact .cc-channel__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:7px;
  height:2px;
  background:var(--cyan);
}
.page-contact .cc-channel--phone .cc-channel__list li::before{background:var(--orange);}
.page-contact .cc-peak{margin-top:1.4rem;font-size:.88rem;line-height:1.7;}

.page-contact .cc-hours{padding-top:clamp(2rem,5vw,3.5rem);}
.page-contact .cc-hours__grid{display:grid;gap:clamp(1.2rem,3vw,2.2rem);}
.page-contact .cc-hours__intro p{margin:.6rem 0 0;line-height:1.75;font-size:.94rem;}
.page-contact .cc-hours__table{display:grid;gap:0;border-top:1px solid var(--line);}
.page-contact .cc-hours__row{
  display:grid;
  gap:.4rem;
  padding:1.05rem 0;
  border-bottom:1px solid var(--line);
}
.page-contact .cc-hours__row--hot{
  background:linear-gradient(90deg, rgba(255,107,44,.13), transparent 72%);
  padding-left:.9rem;
  border-left:3px solid var(--orange);
}
.page-contact .cc-hours__time{
  font-family:var(--font-mono);
  font-weight:700;
  font-size:.95rem;
  color:var(--cyan);
  letter-spacing:.02em;
}
.page-contact .cc-hours__row--hot .cc-hours__time{color:var(--orange-hi);}
.page-contact .cc-hours__label{
  font-family:var(--font-display);
  font-size:.98rem;
  margin:0 0 .2rem;
  color:var(--mist);
}
.page-contact .cc-hours__row p{margin:0;font-size:.88rem;line-height:1.7;color:var(--slate);}

.page-contact .cc-address{padding-top:clamp(2rem,5vw,3.5rem);}
.page-contact .cc-address__grid{display:grid;gap:clamp(1.3rem,3vw,2.4rem);}
.page-contact .cc-address__text{margin:.7rem 0 0;font-size:.94rem;line-height:1.75;color:var(--mist);}
.page-contact .cc-address__card{
  margin-top:1.2rem;
  padding:1rem 1.1rem 1.1rem;
  background:var(--glass);
  border:1px solid var(--line-strong);
  clip-path:polygon(0 0, calc(100% - var(--cc-cut)) 0, 100% var(--cc-cut), 100% 100%, var(--cc-cut) 100%, 0 calc(100% - var(--cc-cut)));
}
.page-contact .cc-address__label{display:block;font-size:.76rem;letter-spacing:.14em;color:var(--slate);}
.page-contact .cc-address__value{
  font-family:var(--font-mono);
  font-size:clamp(.95rem,3.4vw,1.15rem);
  line-height:1.6;
  color:var(--ice);
  margin:.4rem 0 .8rem;
  overflow-wrap:anywhere;
}
.page-contact .cc-address__note{margin-top:1rem;font-size:.84rem;line-height:1.7;color:var(--slate);}
.page-contact .cc-address__figure{position:relative;align-self:start;}

.page-contact .cc-partner{padding-top:clamp(2rem,5vw,3.5rem);}
.page-contact .cc-partner-grid{display:grid;gap:var(--gap);margin-top:1.5rem;}
.page-contact .cc-partner-card{
  position:relative;
  padding:1.2rem 1.15rem 1.3rem;
  background:linear-gradient(160deg, rgba(18,50,74,.85), rgba(10,37,64,.55));
  border:1px solid var(--line);
  clip-path:polygon(0 0, 100% 0, 100% calc(100% - var(--cc-cut)), calc(100% - var(--cc-cut)) 100%, 0 100%);
  overflow:hidden;
}
.page-contact .cc-partner-card::after{
  content:"";
  position:absolute;
  right:-30px;
  top:-30px;
  width:90px;
  height:90px;
  border:1px solid var(--line-strong);
  transform:rotate(45deg);
  pointer-events:none;
}
.page-contact .cc-partner-card__index{
  display:block;
  font-family:var(--font-mono);
  font-size:1.9rem;
  font-weight:700;
  color:rgba(45,226,230,.34);
  line-height:1;
}
.page-contact .cc-partner-card h3{
  font-family:var(--font-display);
  font-size:1.05rem;
  margin:.5rem 0 .45rem;
  color:var(--mist);
  letter-spacing:.02em;
}
.page-contact .cc-partner-card p{margin:0;font-size:.88rem;line-height:1.75;color:var(--slate);}
.page-contact .cc-template{
  display:grid;
  gap:1rem;
  margin-top:1.5rem;
  padding:1.15rem 1.15rem 1.25rem;
  border-left:3px solid var(--orange);
  background:linear-gradient(100deg, rgba(255,107,44,.12), rgba(6,26,43,0) 82%);
}
.page-contact .cc-template__title{
  font-family:var(--font-display);
  font-size:1rem;
  margin:0 0 .3rem;
  color:var(--mist);
}
.page-contact .cc-template__body{
  font-family:var(--font-mono);
  font-size:.82rem;
  line-height:1.7;
  color:var(--ice);
  margin:.5rem 0 0;
  overflow-wrap:anywhere;
}
.page-contact .cc-template__actions{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;}

.page-contact .cc-prepare{padding-top:clamp(2rem,5vw,3.5rem);}
.page-contact .cc-prepare__grid{display:grid;gap:clamp(1.4rem,3vw,2.4rem);}
.page-contact .cc-prepare__list{list-style:none;margin:1.1rem 0 0;padding:0;display:grid;gap:.75rem;}
.page-contact .cc-prepare__list li{
  position:relative;
  padding-left:1.35rem;
  font-size:.9rem;
  line-height:1.7;
  color:var(--mist);
}
.page-contact .cc-prepare__list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.5em;
  width:9px;
  height:9px;
  background:var(--cyan);
  clip-path:polygon(0 0, 100% 0, 100% 100%);
}
.page-contact .cc-prepare__list strong{color:var(--ice);font-weight:600;display:block;font-size:.86rem;}
.page-contact .cc-prepare__aside{padding:1.2rem 1.15rem 1.3rem;}
.page-contact .cc-prepare__aside-title{
  font-family:var(--font-display);
  font-size:1.05rem;
  margin:.45rem 0 .5rem;
  color:var(--mist);
}
.page-contact .cc-prepare__aside p{font-size:.86rem;line-height:1.7;margin:0 0 .9rem;}
.page-contact .cc-prepare__links{display:grid;gap:.45rem;}
.page-contact .cc-prepare__links .quick-link{
  display:block;
  padding:.55rem .75rem;
  font-size:.85rem;
  color:var(--ice);
  text-decoration:none;
  border:1px solid var(--line);
  background:rgba(45,226,230,.05);
  transition:border-color .18s ease, background .18s ease;
}
.page-contact .cc-prepare__links .quick-link:hover{border-color:var(--cyan);background:rgba(45,226,230,.13);}
.page-contact .cc-topwrap{display:flex;justify-content:flex-end;padding-top:1.6rem;}

@media (min-width:640px){
  .page-contact .cc-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .cc-template{grid-template-columns:1fr auto;align-items:center;}
  .page-contact .cc-partner-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .page-contact .cc-hours__row{grid-template-columns:11rem 1fr;align-items:start;gap:1rem;}
}

@media (min-width:900px){
  .page-contact .cc-hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;}
  .page-contact .cc-now{position:absolute;right:-.6rem;bottom:-1.4rem;width:min(20rem,86%);margin-top:0;}
  .page-contact .cc-figure{padding-bottom:2.2rem;}
  .page-contact .cc-hours__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;}
  .page-contact .cc-address__grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:start;}
  .page-contact .cc-partner-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .page-contact .cc-prepare__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:start;}
  .page-contact .cc-partner-card:nth-child(2){transform:translateY(1.1rem);}
}

@media (prefers-reduced-motion:reduce){
  .page-contact .cc-jump__link,
  .page-contact .cc-prepare__links .quick-link,
  .page-contact .cc-copy{transition:none;}
  .page-contact .cc-partner-card:nth-child(2){transform:none;}
}
