
:root{--red:#d95b64;--deep:#8d2c34;--ink:#292322;--cream:#fffaf6;--pink:#fff1ef;--line:#ead6d2;--gold:#c99c66}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif}
a{color:inherit}.site-header{height:94px;display:flex;align-items:center;padding:0 4.5%;background:rgba(255,255,255,.98);border-bottom:1px solid #eee;position:sticky;top:0;z-index:30}
.brand{display:flex;align-items:center;gap:13px;text-decoration:none;min-width:310px}.brand img{width:48px;height:67px;object-fit:contain}.brand-ja{font-size:23px;letter-spacing:.08em}.brand-en{font-family:Georgia,serif;font-size:9px;letter-spacing:.24em;margin-top:5px}
.nav{display:flex;align-items:center;justify-content:flex-end;gap:22px;margin-left:auto}.nav a,.social a{text-decoration:none;font-size:12px;white-space:nowrap}.nav a:hover,.nav a.active{color:var(--red)}.nav a small{display:block;font:8px Georgia,serif;letter-spacing:.13em;text-align:center;color:#b98182;margin-top:4px}.social{display:flex;gap:15px;margin-left:22px;padding-left:20px;border-left:1px solid #ddd}.menu-btn{display:none;margin-left:auto;border:0;background:none;font-size:25px}
.hero{min-height:430px;display:grid;grid-template-columns:44% 56%;background:var(--cream);overflow:hidden}.hero-copy{padding:80px 8vw;align-self:center}.kicker{font:15px Georgia,serif;letter-spacing:.22em;color:var(--deep)}.hero h1{font-weight:400;font-size:clamp(38px,4.4vw,66px);letter-spacing:.12em;margin:20px 0}.hero p{font-size:18px;letter-spacing:.12em;line-height:1.9}.hero-img{background:center/cover no-repeat;min-height:430px}
.home-hero{height:calc(100vh - 94px);min-height:620px;position:relative;overflow:hidden;background:#eee}.slide{position:absolute;inset:0;background:center/cover no-repeat;opacity:0;animation:fade 24s infinite}.s1{background-image:url("images/piano.jpg");animation-delay:0s}.s2{background-image:url("images/wedding.jpg");animation-delay:6s}.s3{background-image:url("images/choir.jpg");animation-delay:12s}.s4{background-image:url("images/instruments.jpg");animation-delay:18s}@keyframes fade{0%{opacity:0;transform:scale(1.025)}5%{opacity:1}21%{opacity:1}27%{opacity:0;transform:scale(1)}100%{opacity:0}}
.home-copy{position:absolute;z-index:5;left:50%;top:48%;transform:translate(-50%,-50%);text-align:center;width:90%;text-shadow:0 2px 20px rgba(255,255,255,.95)}.home-copy h1{font-size:clamp(38px,4.5vw,68px);font-weight:400;letter-spacing:.13em;line-height:1.65;margin:0}.home-copy p{font:18px Georgia,serif;letter-spacing:.23em}
.section{padding:90px 7%}.section.soft{background:var(--cream)}.wrap{max-width:1250px;margin:auto}.section-title{font-size:34px;font-weight:400;letter-spacing:.1em;margin:8px 0 25px}.lead{font-size:23px;color:var(--deep);letter-spacing:.08em}.text{line-height:2;font-size:15px}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.photo-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.photo-grid img{width:100%;height:220px;object-fit:cover}.photo-grid .tall{height:450px;grid-row:span 2}
.btn{display:inline-flex;justify-content:space-between;gap:40px;min-width:250px;padding:15px 24px;border:1px solid var(--red);text-decoration:none;color:var(--deep);margin-top:15px}.btn.primary{background:var(--red);color:#fff}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{border:1px solid var(--line);background:#fff;overflow:hidden}.card img{width:100%;height:210px;object-fit:cover}.card-body{padding:23px}.card h3{font-weight:400;font-size:21px;margin:0 0 10px}.card p{font-size:14px;line-height:1.8}
.table{width:100%;border-collapse:collapse;background:#fff}.table th,.table td{border:1px solid var(--line);padding:14px;text-align:left;vertical-align:top}.table th{background:#df747b;color:#fff;font-weight:400}
.news-list{border-top:1px solid var(--line)}.news-item{display:grid;grid-template-columns:150px 1fr;gap:20px;padding:22px 15px;border-bottom:1px solid var(--line)}.tag{display:inline-block;background:#e87980;color:#fff;padding:5px 15px;border-radius:3px;font-size:12px;margin-right:10px}.news-item a{color:#c8343d}
.topic{display:grid;grid-template-columns:100px 190px 1fr;gap:25px;align-items:center;padding:14px;border-bottom:1px solid var(--line)}.topic img{width:190px;height:100px;object-fit:cover}
.info-box{border:1px solid var(--line);padding:28px;background:#fff}.company{width:100%;border-collapse:collapse}.company th,.company td{border-bottom:1px solid var(--line);padding:15px}.company th{width:170px;background:#d8757b;color:#fff;font-weight:400}
.contact-grid{display:grid;grid-template-columns:1.6fr .8fr;gap:35px}.form{background:#fff8f7;padding:35px}.field{display:grid;grid-template-columns:150px 1fr;gap:20px;align-items:center;margin:20px 0}.field input,.field select,.field textarea{width:100%;padding:15px;border:1px solid #ccc;background:#fff;font:inherit}.field textarea{min-height:160px}.contact-card{border:1px solid var(--line);padding:35px;text-align:center}.big{font-size:28px}
.footer{padding:55px 7%;background:var(--cream);text-align:center;line-height:1.9}.footer a{color:var(--red)}
.note-editor{background:#fff4f2;border:1px solid var(--line);padding:20px;margin-top:35px}.note-editor code{font-family:Consolas,monospace}
@media(max-width:1050px){.site-header{height:82px;padding:0 18px}.brand{min-width:0}.brand img{width:39px;height:55px}.brand-ja{font-size:18px}.brand-en{font-size:7px}.nav,.social{display:none}.menu-btn{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 7%}.hero-img{min-height:300px}.home-hero{height:calc(100vh - 82px)}.two-col,.contact-grid{grid-template-columns:1fr}.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.section{padding:60px 22px}.cards{grid-template-columns:1fr}.news-item{grid-template-columns:1fr;gap:7px}.topic{grid-template-columns:1fr}.topic img{width:100%;height:180px}.field{grid-template-columns:1fr;gap:7px}.company th{width:100px}.home-copy h1{font-size:34px}.home-copy p{font-size:12px}}

/* Lesson complete page */
.lesson-table{min-width:900px}
.lesson-table td,.lesson-table th{line-height:1.65}
@media(max-width:600px){
  .lesson-table{font-size:12px}
  .lesson-table th,.lesson-table td{padding:10px 8px}
  .section .cards[style*="repeat(2"]{grid-template-columns:1fr!important}
}


/* =========================================================
   Elegant LINKS page
========================================================= */
.elegant-link-page{background:#fffaf6}
.links-hero{
  height:365px;position:relative;overflow:hidden;
  background:
    linear-gradient(90deg,rgba(255,249,244,.84),rgba(255,255,255,.68),rgba(255,247,242,.78)),
    url("images/wedding.jpg") center 57%/cover no-repeat;
}
.links-hero:after{
  content:"";position:absolute;inset:0;
  background:radial-gradient(circle at 50% 45%,rgba(255,255,255,.2),rgba(255,250,246,.18) 48%,rgba(255,247,242,.35));
}
.links-hero-inner{position:relative;z-index:2;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.links-main-title{font-family:Georgia,"Times New Roman",serif;font-size:62px;letter-spacing:.18em;font-weight:400}
.links-title-line{width:70px;height:1px;background:#b98569;margin:14px 0 18px}
.links-hero p{font-size:16px;letter-spacing:.22em;margin:0 0 10px}
.links-hero span{font:11px Georgia,serif;color:#d76b72;letter-spacing:.34em}
.links-script{position:absolute;right:8%;bottom:48px;font-family:"Brush Script MT","Segoe Script",cursive;font-size:36px;color:#c89567;transform:rotate(-7deg)}

.links-stage{
  min-height:1120px;position:relative;overflow:hidden;padding:35px 4% 90px;
  background:
   radial-gradient(circle at 18% 16%,rgba(255,219,219,.24),transparent 18%),
   radial-gradient(circle at 88% 55%,rgba(255,225,226,.24),transparent 20%),
   linear-gradient(135deg,#fffdf9,#fff8f3 52%,#fffdf9);
}
.links-stage:before,.links-stage:after{
 content:"";position:absolute;width:620px;height:360px;border:1px solid rgba(200,151,94,.62);border-radius:50%;pointer-events:none
}
.links-stage:before{right:-220px;top:95px;transform:rotate(-22deg)}
.links-stage:after{left:-210px;bottom:50px;transform:rotate(17deg)}
.link-flower{position:absolute;color:#efb8b6;opacity:.45;font-size:62px}.flower-a{left:7%;top:100px}.flower-b{right:8%;top:400px}.flower-c{left:13%;bottom:130px}

.links-layout{max-width:1080px;height:1040px;margin:auto;position:relative}
.round-link{position:absolute;width:335px;height:335px;border-radius:50%;padding:7px;text-decoration:none;background:#fff;transition:.35s;z-index:2}
.round-link:hover{transform:translateY(-7px);box-shadow:0 18px 45px rgba(90,54,45,.12)}
.round-link.pink{border:1.5px solid #d87b82}.round-link.blue{border:1.5px solid #7da1cc}.round-link.green{border:1.5px solid #82aa8c}.round-link.gold{border:1.5px solid #d1a151}.round-link.purple{border:1.5px solid #aa7bb0}
.round-photo{width:100%;height:100%;border-radius:50%;background:center/cover no-repeat;overflow:hidden}
.church-photo{background-image:linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,.06)),url("images/wedding.jpg");background-position:20% center}
.strawberry-photo{background-image:linear-gradient(rgba(228,247,224,.25),rgba(228,247,224,.15)),url("images/instruments.jpg");background-position:70% center}
.cake-photo{background-image:linear-gradient(rgba(255,245,229,.08),rgba(255,245,229,.08)),url("images/wedding.jpg");background-position:80% center}
.round-icon{position:absolute;left:-4px;top:15px;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:34px;border:4px solid #fff}
.pink .round-icon{background:#d87b82}.blue .round-icon{background:#759bc9}.green .round-icon{background:#82b294}.gold .round-icon{background:#d4a44c}.purple .round-icon{background:#a77db0}
.round-label{position:absolute;left:11%;right:11%;bottom:38px;background:rgba(255,255,255,.9);padding:17px 12px 13px;text-align:center;font-size:20px;line-height:1.55;box-shadow:0 5px 18px rgba(80,50,40,.05)}
.round-label em{font-style:normal;font-size:15px}.round-label small{display:block;font-size:20px;color:#c28c65;margin-top:4px}
.top{top:0;left:50%;transform:translateX(-50%)}.top:hover{transform:translateX(-50%) translateY(-7px)}
.left{top:310px;left:4%}.right{top:310px;right:4%}.bottom-left{top:665px;left:15%}.bottom-right{top:665px;right:15%}
.links-center{position:absolute;top:465px;left:50%;transform:translateX(-50%);text-align:center;z-index:1}
.treble{font-size:75px;color:#c69869;line-height:1}.center-links{font:43px Georgia,serif;letter-spacing:.18em}.center-sub{font:10px Georgia,serif;letter-spacing:.33em;margin-top:9px}.center-line{width:55px;height:1px;background:#b78d68;margin:25px auto}

@media(max-width:850px){
 .links-hero{height:300px}.links-main-title{font-size:44px}.links-script{font-size:25px;right:5%}
 .links-stage{padding:45px 20px;min-height:auto}.links-layout{height:auto;display:grid;grid-template-columns:1fr;gap:35px}
 .round-link,.top,.left,.right,.bottom-left,.bottom-right{position:relative;top:auto;left:auto;right:auto;transform:none;margin:auto;width:min(82vw,335px);height:min(82vw,335px)}
 .top:hover{transform:translateY(-7px)}.links-center{position:relative;top:auto;left:auto;transform:none;order:3;margin:5px 0}
 .top{order:1}.left{order:2}.right{order:4}.bottom-left{order:5}.bottom-right{order:6}
}


/* =========================================================
   2026 Elegant unified design
   Floral / blush pink / warm gold / music-office aesthetic
========================================================= */
:root{
  --rose:#c94f59;
  --rose-soft:#e9a5a8;
  --blush:#fff5f2;
  --ivory:#fffdf9;
  --gold:#c79a68;
  --brown:#493733;
  --hairline:rgba(191,126,116,.35);
}
body{
  background-color:var(--ivory);
  background-image:
    linear-gradient(rgba(255,253,249,.86),rgba(255,251,247,.88)),
    url("images/floral-background.png");
  background-size:cover;
  background-position:center top;
  background-repeat:no-repeat;
  background-attachment:fixed;
}
.site-header{
  background:rgba(255,255,255,.95);
  box-shadow:0 5px 25px rgba(96,64,54,.05);
}
.brand-ja{font-size:25px}
.nav a{letter-spacing:.03em}
.nav a.active{position:relative}
.nav a.active:after{
  content:"";position:absolute;left:15%;right:15%;bottom:-13px;height:1px;background:var(--rose);
}
.section,.section.soft{
  background:rgba(255,253,250,.78);
  backdrop-filter:blur(1px);
}
.section-title{position:relative}
.section-title:after{
  content:"";display:block;width:58px;height:1px;background:linear-gradient(90deg,var(--rose),var(--gold));
  margin-top:15px;
}
.lead{color:var(--rose);font-weight:400}
.kicker{color:var(--rose);letter-spacing:.3em}
.btn{
  border-color:var(--rose);background:rgba(255,255,255,.68);
  transition:.3s;letter-spacing:.12em
}
.btn:hover{background:var(--rose);color:white;transform:translateY(-2px)}
.btn.primary{background:linear-gradient(90deg,#d75b63,#e78384);border:0}
.card,.info-box,.form,.contact-card{
  background:rgba(255,255,255,.84);
  box-shadow:0 12px 35px rgba(105,68,55,.055);
}
.card{border-color:rgba(207,135,128,.25)}
.card img{filter:saturate(.9) brightness(1.04)}
.table{background:rgba(255,255,255,.88)}
.table th{background:linear-gradient(90deg,#d96a70,#df8383)}
.table th,.table td{border-color:#efc4c0}
.company{background:rgba(255,255,255,.86)}
.company th{background:linear-gradient(90deg,#d26870,#df8886)}
.news-list{background:rgba(255,255,255,.72);padding:0 22px;border:1px solid rgba(215,150,143,.22)}
.tag{background:linear-gradient(90deg,#d95f68,#e98c8c)}
.footer{
  background:rgba(255,248,244,.92);
  border-top:1px solid rgba(201,154,104,.25);
}

/* Elegant standard page hero */
.page-news .hero,.page-lesson .hero,.page-wedding .hero,.page-about .hero,.page-contact .hero{
  min-height:410px;
  background:rgba(255,250,246,.72);
  border-bottom:1px solid rgba(201,154,104,.18);
}
.page-news .hero-copy,.page-lesson .hero-copy,.page-wedding .hero-copy,.page-about .hero-copy,.page-contact .hero-copy{
  position:relative;
  background:
    linear-gradient(rgba(255,252,249,.80),rgba(255,252,249,.80)),
    url("images/floral-background.png") center/cover no-repeat;
}
.page-news .hero-copy:after,.page-lesson .hero-copy:after,.page-wedding .hero-copy:after,.page-about .hero-copy:after,.page-contact .hero-copy:after{
  content:"♪";position:absolute;right:9%;bottom:12%;font:42px Georgia,serif;color:rgba(199,154,104,.45)
}
.hero h1{font-size:clamp(40px,4.5vw,64px);letter-spacing:.14em}
.hero p{font-size:16px;color:#67504a}
.hero-img{position:relative}
.hero-img:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,248,243,.2),rgba(255,255,255,0))}

/* Home: retain slideshow, but give the lower page the approved elegant floral feel */
.page-home .home-hero:after{
  content:"";position:absolute;inset:0;z-index:3;
  background:linear-gradient(90deg,rgba(255,249,244,.12),rgba(255,255,255,.05),rgba(255,249,244,.12));
  pointer-events:none
}
.page-home .home-copy{z-index:6}
.page-home .home-copy h1{text-shadow:0 2px 22px rgba(255,255,255,.98)}
.page-home .section.soft{
  background:
    linear-gradient(rgba(255,253,250,.87),rgba(255,253,250,.87)),
    url("images/floral-background.png") center/cover no-repeat;
}
.page-home .photo-grid img{box-shadow:0 14px 35px rgba(83,53,44,.09)}

/* Lesson page */
.page-lesson .section.soft{
  background:
    linear-gradient(rgba(255,252,249,.91),rgba(255,252,249,.91)),
    url("images/floral-background.png") center top/cover fixed no-repeat;
}
.page-lesson .cards .card-body h3{color:#a63f48}
.page-lesson .info-box{border-left:3px solid rgba(205,86,95,.45)}

/* Wedding */
.page-wedding .section.soft{
  background:
    linear-gradient(rgba(255,250,247,.88),rgba(255,250,247,.88)),
    url("images/floral-background.png") center/cover no-repeat;
}
.page-wedding .card h3{color:#9f4148}

/* About / Contact */
.page-about .section,.page-contact .section,.page-news .section{
  background:
    linear-gradient(rgba(255,253,250,.90),rgba(255,253,250,.90)),
    url("images/floral-background.png") center/cover fixed no-repeat;
}
.page-contact .form{border-top:2px solid rgba(202,79,89,.55)}
.page-contact .contact-card{border-top:2px solid rgba(199,154,104,.55)}

/* LINKS: keep the approved circular composition, use unified floral background */
.elegant-link-page .links-stage{
  background:
    linear-gradient(rgba(255,252,249,.79),rgba(255,250,246,.82)),
    url("images/floral-background.png") center/cover no-repeat;
}
.elegant-link-page .links-hero{
  background:
    linear-gradient(90deg,rgba(255,249,244,.74),rgba(255,255,255,.60),rgba(255,247,242,.72)),
    url("images/wedding.jpg") center 57%/cover no-repeat;
}

/* mobile */
@media(max-width:1050px){
  body{background-attachment:scroll}
  .nav a.active:after{display:none}
}
@media(max-width:600px){
  .brand-ja{font-size:18px}
  .page-news .hero,.page-lesson .hero,.page-wedding .hero,.page-about .hero,.page-contact .hero{min-height:auto}
  .hero h1{font-size:36px}
  .section-title{font-size:28px}
}


/* =========================================================
   FINAL: centered full-photo hero
   NEWS / LESSON / WEDDING / ABOUT
   This block intentionally overrides older split-hero rules.
========================================================= */
body.page-news .hero.centered-hero,
body.page-lesson .hero.centered-hero,
body.page-wedding .hero.centered-hero,
body.page-about .hero.centered-hero {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 460px !important;
  min-height: 460px !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

body.page-news .hero.centered-hero .centered-hero-overlay,
body.page-lesson .hero.centered-hero .centered-hero-overlay,
body.page-wedding .hero.centered-hero .centered-hero-overlay,
body.page-about .hero.centered-hero .centered-hero-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: rgba(255, 250, 246, 0.52) !important;
}

/* Remove the old left-half hero treatment completely */
body.page-news .hero.centered-hero .hero-copy,
body.page-lesson .hero.centered-hero .hero-copy,
body.page-wedding .hero.centered-hero .hero-copy,
body.page-about .hero.centered-hero .hero-copy {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  transform: none !important;
  z-index: 2 !important;
  width: min(920px, 90%) !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 35px 20px !important;
  margin: 0 auto !important;
  display: block !important;
  text-align: center !important;
  background: transparent !important;
  background-image: none !important;
}

body.page-news .hero.centered-hero .hero-copy::after,
body.page-lesson .hero.centered-hero .hero-copy::after,
body.page-wedding .hero.centered-hero .hero-copy::after,
body.page-about .hero.centered-hero .hero-copy::after {
  display: none !important;
  content: none !important;
}

body.page-news .hero.centered-hero .kicker,
body.page-lesson .hero.centered-hero .kicker,
body.page-wedding .hero.centered-hero .kicker,
body.page-about .hero.centered-hero .kicker {
  margin: 0 0 20px !important;
  color: #b94e57 !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 14px !important;
  letter-spacing: .34em !important;
}

body.page-news .hero.centered-hero h1,
body.page-lesson .hero.centered-hero h1,
body.page-wedding .hero.centered-hero h1,
body.page-about .hero.centered-hero h1 {
  margin: 0 !important;
  color: #2d2523 !important;
  font-family: "Yu Mincho", "Hiragino Mincho ProN", serif !important;
  font-size: clamp(42px, 4.5vw, 66px) !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: .12em !important;
}

body.page-news .hero.centered-hero h1::after,
body.page-lesson .hero.centered-hero h1::after,
body.page-wedding .hero.centered-hero h1::after,
body.page-about .hero.centered-hero h1::after {
  content: "" !important;
  display: block !important;
  width: 66px !important;
  height: 1px !important;
  margin: 23px auto !important;
  background: linear-gradient(90deg, #c94f59, #c79a68) !important;
}

body.page-news .hero.centered-hero p,
body.page-lesson .hero.centered-hero p,
body.page-wedding .hero.centered-hero p,
body.page-about .hero.centered-hero p {
  margin: 0 !important;
  color: #51433f !important;
  font-size: 16px !important;
  line-height: 2 !important;
  letter-spacing: .16em !important;
}

/* There is no separate .hero-img in the rebuilt hero. */
body.page-news .hero.centered-hero .hero-img,
body.page-lesson .hero.centered-hero .hero-img,
body.page-wedding .hero.centered-hero .hero-img,
body.page-about .hero.centered-hero .hero-img {
  display: none !important;
}

@media (max-width: 700px) {
  body.page-news .hero.centered-hero,
  body.page-lesson .hero.centered-hero,
  body.page-wedding .hero.centered-hero,
  body.page-about .hero.centered-hero {
    height: 360px !important;
    min-height: 360px !important;
  }

  body.page-news .hero.centered-hero h1,
  body.page-lesson .hero.centered-hero h1,
  body.page-wedding .hero.centered-hero h1,
  body.page-about .hero.centered-hero h1 {
    font-size: 34px !important;
  }

  body.page-news .hero.centered-hero p,
  body.page-lesson .hero.centered-hero p,
  body.page-wedding .hero.centered-hero p,
  body.page-about .hero.centered-hero p {
    font-size: 13px !important;
    letter-spacing: .08em !important;
  }
}


/* ===== CONTACT HERO: title centered inside photo ===== */
body.page-contact .hero.centered-hero {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 460px !important;
  min-height: 460px !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}
body.page-contact .hero.centered-hero .centered-hero-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: rgba(255,250,246,.52) !important;
}
body.page-contact .hero.centered-hero .hero-copy {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  z-index: 2 !important;
  width: min(920px,90%) !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 35px 20px !important;
  margin: 0 auto !important;
  display: block !important;
  text-align: center !important;
  background: transparent !important;
  background-image: none !important;
}
body.page-contact .hero.centered-hero .hero-copy::after {
  display: none !important;
  content: none !important;
}
body.page-contact .hero.centered-hero .kicker {
  margin: 0 0 20px !important;
  color: #b94e57 !important;
  font-family: Georgia,"Times New Roman",serif !important;
  font-size: 14px !important;
  letter-spacing: .34em !important;
}
body.page-contact .hero.centered-hero h1 {
  margin: 0 !important;
  color: #2d2523 !important;
  font-family: "Yu Mincho","Hiragino Mincho ProN",serif !important;
  font-size: clamp(42px,4.5vw,66px) !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  letter-spacing: .12em !important;
}
body.page-contact .hero.centered-hero h1::after {
  content: "" !important;
  display: block !important;
  width: 66px !important;
  height: 1px !important;
  margin: 23px auto !important;
  background: linear-gradient(90deg,#c94f59,#c79a68) !important;
}
body.page-contact .hero.centered-hero p {
  margin: 0 !important;
  color: #51433f !important;
  font-size: 16px !important;
  line-height: 2 !important;
  letter-spacing: .16em !important;
}
@media (max-width:700px) {
  body.page-contact .hero.centered-hero {
    height: 360px !important;
    min-height: 360px !important;
  }
  body.page-contact .hero.centered-hero h1 { font-size: 34px !important; }
  body.page-contact .hero.centered-hero p {
    font-size: 13px !important;
    letter-spacing: .08em !important;
  }
}
