@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600&display=swap');
:root{--cream:#efe3d6;--cream-soft:#f5ede4;--cream-light:#faf5ef;--sand:#e5d4c3;--taupe:#9b7865;--brown:#96634d;--brown2:#7f503e;--deep:#542c22;--ink:#4c403b;--muted:#756862;--white:#fffaf5;--radius:22px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Montserrat',Arial,sans-serif;line-height:1.65;font-weight:400}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--max);margin:auto;padding:0 34px}
.header{background:rgba(245,237,228,.98);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(84,44,34,.06)}.nav{min-height:120px;display:flex;align-items:center;gap:28px}.logo{width:215px;height:96px;object-fit:contain;object-position:left center}.links{display:flex;gap:20px;align-items:center;margin-left:auto;font-size:12.5px;color:#574943}.links>a:not(.btn){padding:9px 0;border-bottom:1px solid transparent}.links>a:not(.btn):hover,.links .active{border-color:var(--brown)}
.btn{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(90deg,var(--brown),var(--taupe));color:#fff;padding:14px 27px;border-radius:999px;font-size:13.5px;font-weight:400;letter-spacing:.01em}.btn:after{content:'  →';margin-left:12px;font-size:18px}.header .btn:after{display:none}.btn:hover{filter:brightness(.97)}
.hero-dark{background:var(--cream-soft);color:var(--ink);padding:62px 0 72px}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:62px;align-items:center}.home-title{font-size:clamp(48px,5vw,70px);line-height:1.04;margin:0 0 22px;font-weight:400;letter-spacing:-.045em;color:var(--deep)}.home-sub{font-size:clamp(25px,2.25vw,32px);line-height:1.34;margin:0 0 31px;color:var(--brown2);font-weight:400;letter-spacing:-.025em}.lead{font-size:16.5px;max-width:820px;line-height:1.72}.hero-dark .lead{max-width:545px}.hero-dark strong{font-size:13px;letter-spacing:.2em;color:var(--deep);font-weight:600}.portrait{border-radius:22px 22px 22px 22px;overflow:hidden;max-height:700px}.portrait img{width:100%;height:100%;object-fit:cover}
.section{padding:78px 0}.section.alt{background:var(--cream-soft)}.page{padding:74px 0 0}h1{font-size:clamp(43px,4.6vw,62px);line-height:1.08;font-weight:400;margin:0 0 15px;color:var(--deep);letter-spacing:-.038em}h2{font-size:clamp(29px,2.8vw,39px);line-height:1.2;font-weight:400;margin:0 0 24px;color:var(--deep);letter-spacing:-.03em}h3{font-size:19px;line-height:1.38;font-weight:500;margin:0 0 10px;color:var(--deep)}.sub{font-size:clamp(18px,1.55vw,22px);color:var(--brown2);margin:0 0 22px;line-height:1.5;font-weight:400;max-width:780px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:11.5px;font-weight:600;color:var(--brown2)}.rule{width:66px;border-top:1px solid var(--brown);margin:22px 0 32px}
.section .wrap>h2:after,.page>.wrap>h2:after{content:'';display:inline-block;width:52px;border-top:1px solid var(--brown);margin-left:20px;vertical-align:middle}
.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.card{background:rgba(250,245,239,.68);border-radius:18px;padding:31px 25px;border:1px solid rgba(84,44,34,.035);box-shadow:none}.card .icon{width:58px;height:58px;margin:0 0 18px;display:block}.card .icon img{width:100%;height:100%;object-fit:contain}.offer-card{text-align:center;min-height:220px;display:flex;flex-direction:column;justify-content:center;align-items:center}.card-link{min-height:245px;display:flex;flex-direction:column}.card-link p{font-size:12.5px;color:var(--brown2);margin-top:auto;padding-top:20px}.frames{grid-template-columns:repeat(2,1fr);gap:18px}.frames .card{background:var(--cream-soft);padding:34px 32px}.frames .card:last-child{grid-column:1/-1}.frames .icon{width:52px;height:52px}
.dark-band{background:var(--taupe);color:#fff;padding:72px 0}.dark-band .eyebrow{color:#f8eee7}.dark-band h2{font-size:clamp(32px,3.3vw,44px);color:#fff;max-width:700px}.dark-band .btn{background:var(--cream-light);color:var(--deep)}
.prose{max-width:850px}.prose p{margin:0 0 22px}.two{display:grid;grid-template-columns:.92fr 1.08fr;gap:66px;align-items:center}.topics{max-width:920px}.topics li{margin:17px 0;padding-left:7px}.topics li strong{display:inline;font-weight:600;color:var(--deep)}.back{display:inline-block;margin-bottom:27px;color:var(--brown2);font-size:13px}.back:before{content:'← ';margin-right:5px}.detail-intro{max-width:850px}.detail-page .topics{background:var(--cream-soft);border-radius:20px;padding:31px 44px;margin-top:30px}.detail-page .topics li::marker{color:var(--brown)}
.quote{background:var(--cream-soft);border-radius:18px;padding:38px 42px;font-size:20px;line-height:1.55;font-weight:400;position:relative;color:var(--deep)}.quote:before{content:'“';position:absolute;left:18px;top:2px;font-size:55px;opacity:.12}.contactbox{background:var(--cream-soft);border-radius:20px;padding:38px}.contactbox p{margin:10px 0}.contactbox hr{border:0;border-top:1px solid rgba(128,104,88,.22);margin:28px 0}.small{font-size:12.5px}.legal-page h2{font-size:24px;margin-top:38px}.legal-page{max-width:900px}
.timeline{border-left:1px solid rgba(150,99,77,.55);padding-left:27px}.timeline p{margin:0 0 19px;position:relative}.timeline p:before{content:'';width:7px;height:7px;background:var(--brown);border-radius:50%;position:absolute;left:-31px;top:10px}.about-intro{display:grid;grid-template-columns:1.08fr .92fr;gap:66px;align-items:start}.about-photo{border-radius:8px 34px 8px 34px;overflow:hidden;max-height:570px}.about-photo img{width:100%;height:100%;object-fit:cover}.about-intro .quote{margin-top:18px}.soft-band{background:var(--cream-soft);margin-top:72px;padding:72px 0}.soft-band .wrap{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px;align-items:start}
.footer{background:var(--taupe);color:#fff;margin-top:78px}.footer-inner{min-height:118px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:25px}.footer-mark{width:210px;height:62px;object-fit:contain;object-position:center}.footer .claim{text-align:right;font-size:13px;font-weight:300;letter-spacing:.01em}.legal{display:flex;gap:24px;font-size:12.5px}
@media(max-width:960px){.links{display:none}.nav{min-height:96px}.logo{width:175px}.hero-grid,.two,.about-intro,.soft-band .wrap{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.frames{grid-template-columns:1fr}.frames .card:last-child{grid-column:auto}.footer-inner{grid-template-columns:1fr;text-align:center;padding:28px}.footer .claim{text-align:center}.legal{justify-content:center}.footer-mark{margin:auto}.portrait{max-height:720px}.hero-dark{padding:48px 0}}
@media(max-width:600px){.cards{grid-template-columns:1fr}.wrap{padding:0 21px}.section,.page{padding-top:54px}.home-title{font-size:44px}.home-sub{font-size:24px}.sub{font-size:18px}.lead{font-size:16px}.quote{font-size:19px;padding:32px}.footer{margin-top:58px}}

/* Final visual corrections — preserve approved reconstructed style */
.links{white-space:nowrap;gap:18px}
.links a{white-space:nowrap}
.footer-mark{width:270px;height:auto;max-height:none;object-fit:contain;overflow:visible}
.footer-inner{overflow:visible}
.offer-card .icon{width:72px;height:72px}
.card-link .icon{width:68px;height:68px}
.frames .icon{width:64px;height:64px}
@media(max-width:1120px) and (min-width:961px){.wrap{padding-left:24px;padding-right:24px}.logo{width:190px}.links{gap:13px;font-size:11.5px}.header .btn{padding:12px 18px}}

/* Footer mark: intentionally smaller so the full line artwork remains visible */
.footer-mark{width:180px;height:auto;max-width:100%;object-fit:contain;object-position:center;overflow:visible}
