/* Dearly design — soft editorial layer v0.3. Shared across pages. */
:root{--dd-bg:#f7f3ee;--dd-white:#fffdfb;--dd-ink:#3c3532;--dd-muted:#716760;--dd-line:#e8ded7;--dd-accent:#aa827d;--dd-dark:#514540;--dd-max:1440px}
.dd-site{font-family:'Noto Sans JP',sans-serif;color:var(--dd-ink);letter-spacing:.035em}
.dd-section--tint,.dd-contact{background:var(--dd-bg)}
.dd-section--dark{background:var(--dd-dark);color:#fffaf6}
.dd-heading,.dd-feature h3{font-family:'Noto Serif JP',serif;font-weight:500;letter-spacing:.02em}
.dd-heading{font-size:clamp(34px,4.2vw,68px);line-height:1.55}
.dd-eyebrow,.dd-card__num,.dd-feature>span{font-family:'Cormorant Garamond',serif;font-size:clamp(15px,1.25vw,20px);font-weight:500;letter-spacing:.13em;color:var(--dd-accent)}
.dd-sectionhead>p:last-child{color:var(--dd-muted)}
.dd-card{background:var(--dd-white);border:1px solid #ebe1dc;min-height:320px;transition:transform .25s ease,box-shadow .25s ease}
.dd-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px rgba(62,48,42,.055)}
.dd-card h3{font-family:'Cormorant Garamond',serif;font-size:clamp(31px,3vw,48px);font-weight:500;letter-spacing:0;margin:36px 0 15px}
.dd-card p{color:var(--dd-muted)}
.dd-button{border-radius:2px;background:var(--dd-ink);font-weight:500;letter-spacing:.08em;padding:18px 30px}
.dd-button--light{background:#fffaf6;color:var(--dd-dark)!important}
.dd-textlink{border-bottom-color:var(--dd-accent)}
.dd-contact h2{font-family:'Cormorant Garamond',serif;font-weight:400;letter-spacing:-.045em;font-size:clamp(88px,14vw,215px);line-height:1}
.dd-feature{border-top-color:var(--dd-line)}
.dd-feature h3{font-size:clamp(18px,1.6vw,24px)}
.dd-english{font-family:'Cormorant Garamond',serif;font-weight:400}
.dd-script{font-family:'Caveat',cursive;font-weight:400;letter-spacing:0;color:var(--dd-accent)}
@media(max-width:800px){.dd-heading{font-size:clamp(32px,7vw,48px)}.dd-card h3{margin-top:18px}}

/* v0.4 — shared action spacing, header/footer typography */
.dd-site .dd-body + .dd-button { margin-top: 28px; }
.dd-site .dd-button--about { margin-top: 28px; }
/* Keep site chrome in the same Japanese sans-serif as body copy. */
body :is(header, footer, .l-header, .l-footer, .l-fixHeader, .p-globalNav, .p-spMenu) :is(a, span, p, li, button, small) {
  font-family: 'Noto Sans JP', sans-serif;
}
@media(max-width:800px) { .dd-site .dd-body + .dd-button, .dd-site .dd-button--about { margin-top: 24px; } }

/* v0.5 — reusable filled and outlined buttons */
.dd-site .dd-button{border:1px solid var(--dd-ink);border-radius:2px;box-sizing:border-box;min-height:56px;gap:28px;padding:16px 26px;text-decoration:none;line-height:1.5;transition:background-color .2s,color .2s,border-color .2s,transform .2s}
.dd-site .dd-button--solid{background:var(--dd-ink);color:#fff!important}
.dd-site .dd-button--outline{background:transparent;color:var(--dd-ink)!important}
.dd-site .dd-button--solid:hover{background:var(--dd-accent);border-color:var(--dd-accent);color:#fff!important}
.dd-site .dd-button--outline:hover{background:var(--dd-ink);border-color:var(--dd-ink);color:#fff!important}
.dd-site .dd-button--light{background:#fffaf6;border-color:#fffaf6;color:var(--dd-dark)!important}
.dd-site .dd-button--light:hover{background:transparent;border-color:#fffaf6;color:#fffaf6!important}
.dd-site .dd-section--dark .dd-button:not(.dd-button--light){border-color:#fffaf6}
@media(max-width:600px){.dd-site .dd-button{min-height:52px;padding:14px 20px;gap:18px}}

/* v1.3 — consistent responsive footer */
/* Hide Arkhe's old footer so its links/copyright cannot duplicate or wrap awkwardly. */
body .l-footer { display:none !important; }
.dd-custom-footer{background:#fffdfb;color:#514540;text-align:center;padding:52px 20px 30px;font-family:'Noto Sans JP',sans-serif;line-height:1.6}
.dd-custom-footer a{text-decoration:none!important;border:0!important;box-shadow:none!important;color:#514540!important;transition:color .2s ease}
.dd-custom-footer a:hover,.dd-custom-footer a:focus-visible{color:#aa827d!important;text-decoration:none!important}
.dd-custom-footer__nav{display:grid;grid-template-columns:repeat(6,max-content);justify-content:center;column-gap:clamp(18px,2.4vw,42px);row-gap:15px;margin:0 auto 34px;font-size:13px}
.dd-custom-footer__copyright{font-size:12px;letter-spacing:.04em;margin:0 0 18px;white-space:nowrap;color:#716760}
.dd-custom-footer__legal{display:flex;justify-content:center;align-items:center;gap:12px 26px;flex-wrap:wrap;font-size:11px;color:#716760}
@media(max-width:760px){.dd-custom-footer{padding:40px 18px 28px}.dd-custom-footer__nav{grid-template-columns:repeat(2,minmax(0,1fr));max-width:360px;gap:0;margin-bottom:32px}.dd-custom-footer__nav a{padding:11px 4px;font-size:13px;white-space:nowrap}.dd-custom-footer__copyright{font-size:11px;margin-bottom:18px}.dd-custom-footer__legal{flex-direction:column;gap:12px;font-size:11px}}
