:root { color-scheme: light; --paper:#f6f2e9; --ink:#313a30; --muted:#696f63; --accent:#65443f; --line:#d8d9c9; }
    section[id]{scroll-margin-top:28px}
    .hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:28px}
    .secondary-action{font-size:14px;border-bottom:1px solid var(--line);padding:10px 0}
    .secondary-action span{margin-left:12px}
    .hero .hero-actions .button{margin:0}
    .faq{padding:24px 0 72px}
    .faq .eyebrow{margin-bottom:16px}
    .faq details{border-bottom:1px solid var(--line);padding:0 4px}
    .faq details:first-of-type{border-top:1px solid var(--line)}
    .faq summary{cursor:pointer;list-style:none;padding:23px 34px 23px 0;font-size:18px;position:relative}
    .faq summary::-webkit-details-marker{display:none}
    .faq summary::after{content:'+';position:absolute;right:4px;top:18px;font-size:26px;color:var(--accent)}
    .faq details[open] summary::after{content:'−'}
    .faq details p{padding:0 32px 24px 0;color:var(--muted);max-width:800px}
    .faq a{text-decoration:underline;text-underline-offset:4px}
    .faq summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
    * { box-sizing:border-box; }
    html { scroll-behavior:smooth; }
    body { margin:0; background:var(--paper); color:var(--ink); font:16px/1.65 "Segoe UI",Arial,sans-serif; }
    a { color:inherit; text-decoration:none; }
    a:focus-visible { outline:3px solid var(--accent); outline-offset:6px; }
    .wrap { width:min(1160px,calc(100% - 64px)); margin:auto; }
    header { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:27px 0; border-bottom:1px solid var(--line); }
    .brand { font:32px/1 Georgia,"Times New Roman",serif; letter-spacing:-1.5px; }
    .brand span { color:var(--accent); }
    nav { display:flex; align-items:center; gap:36px; font-size:14px; }
    nav a:hover,.text-link:hover { color:var(--accent); }
    .nav-contact { border:1px solid var(--line); border-radius:30px; padding:9px 19px; }
    .hero { display:grid; grid-template-columns:1.12fr 1fr; align-items:center; gap:70px; padding:90px 0 86px; }
    .eyebrow { display:flex; align-items:center; gap:10px; color:var(--accent); font-size:11px; letter-spacing:2.5px; text-transform:uppercase; font-weight:600; }
    .eyebrow::before { content:""; width:7px; height:7px; border-radius:50%; background:var(--accent); }
    h1,h2,h3,p { margin:0; }
    h1 { margin:27px 0; font:clamp(52px,5.6vw,78px)/1.05 Georgia,"Times New Roman",serif; letter-spacing:-3px; font-weight:400; }
    h1 em { color:var(--accent); font-weight:400; }
    .intro { max-width:420px; color:var(--muted); font-size:17px; }
    .button { display:inline-flex; align-items:center; justify-content:space-between; gap:30px; padding:15px 23px; background:var(--ink); color:var(--paper); border-radius:5px; font-size:14px; transition:background .2s,transform .2s; }
    .button:hover { background:var(--accent); transform:translateY(-2px); }
    .button span { font-size:21px; line-height:1; }
    .hero .button { margin-top:32px; }
    .handle { margin-top:16px; color:var(--muted); font-size:12px; }
    .art { position:relative; min-height:460px; border-radius:210px 210px 12px 12px; background:#e2e5d8; display:grid; place-items:center; overflow:hidden; }
    .art::before { content:""; position:absolute; width:310px; height:310px; border:1px solid #bdc5b1; border-radius:50%; top:48px; }
    .art::after { content:""; position:absolute; width:380px; height:120px; bottom:25px; background:radial-gradient(ellipse,#66725533,transparent 65%); }
    .book { position:relative; width:245px; height:320px; border-radius:3px 12px 12px 3px; background:#744d45; transform:rotate(-9deg); box-shadow:12px 18px 25px #38422f2b,inset 9px 0 #563d38,inset 12px 0 #976a5d; color:#f3e8d7; z-index:1; padding:33px 30px; }
    .book::after { content:""; position:absolute; top:22px; bottom:23px; right:-5px; width:6px; background:repeating-linear-gradient(90deg,#f0e9d7 0 2px,#d6cbb7 2px 3px); border-radius:0 3px 3px 0; }
    .book-top { font-size:9px; text-transform:uppercase; letter-spacing:2px; }
    .book-title { margin-top:45px; font:39px/1.08 Georgia,serif; letter-spacing:-1px; }
    .book-line { width:42px; border-top:1px solid #c2a08a; margin:25px 0 13px; }
    .book-bottom { font:italic 16px Georgia,serif; }
    .art-note { position:absolute; right:16px; bottom:38px; z-index:2; background:#fcfaf4; border:1px solid #e3e0d5; padding:16px 22px; transform:rotate(5deg); box-shadow:0 6px 18px #37422f0c; font:italic 18px/1.4 Georgia,serif; }
    .strip { display:flex; justify-content:space-between; gap:24px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:21px 0; color:var(--muted); font-size:13px; }
    .strip span::before { content:"✳"; margin-right:12px; color:var(--accent); }
    .details { padding:78px 0 72px; scroll-margin-top:30px; }
    .section-head { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:35px; }
    h2 { font:42px/1.15 Georgia,"Times New Roman",serif; letter-spacing:-1.3px; font-weight:400; }
    .section-head p { max-width:320px; font-size:14px; color:var(--muted); }
    .steps { display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
    .step { border-top:1px solid var(--line); padding-top:22px; }
    .number { font:italic 16px Georgia,serif; color:var(--accent); }
    h3 { margin:22px 0 10px; font-size:17px; font-weight:500; }
    .step p { color:var(--muted); font-size:14px; }
    .contact { display:flex; align-items:center; justify-content:space-between; gap:40px; padding:40px 44px; background:#e7e9dd; border-radius:8px; margin-bottom:65px; scroll-margin-top:30px; }
    .contact h2 { font-size:33px; }
    .contact p { margin-top:12px; font-size:14px; color:var(--muted); max-width:500px; }
    .contact .button { flex-shrink:0; }
    footer { display:flex; justify-content:space-between; align-items:center; gap:20px; border-top:1px solid var(--line); padding:25px 0 30px; color:var(--muted); font-size:12px; }
    footer .brand { font-size:26px; color:var(--ink); }
    @media(max-width:900px) {
      .hero { gap:35px; padding:65px 0; }
      h1 { font-size:57px; }
      .art { min-height:420px; }
      .art-note { right:8px; padding:14px; }
      .contact { padding:32px; }
    }
    @media(max-width:680px) {
      .wrap { width:calc(100% - 40px); }
      header { padding:22px 0; }
      nav { gap:16px; font-size:12px; }
      nav a:first-child { display:none; }
      .nav-contact { padding:7px 13px; }
      .hero { grid-template-columns:1fr; gap:42px; padding:46px 0 38px; }
      h1 { font-size:60px; max-width:400px; letter-spacing:-2.5px; margin:23px 0; }
      .intro { font-size:16px; }
      .art { min-height:410px; max-width:420px; width:100%; margin:auto; }
      .strip { flex-wrap:wrap; justify-content:center; gap:10px 24px; padding:19px 0; font-size:12px; }
      .details { padding:48px 0; }
      .section-head { display:block; margin-bottom:28px; }
      h2 { font-size:36px; }
      .section-head p { margin-top:18px; }
      .steps { grid-template-columns:1fr; gap:26px; }
      h3 { margin-top:12px; }
      .contact { flex-direction:column; align-items:start; gap:23px; padding:27px; margin-bottom:42px; }
      .contact h2 { font-size:30px; }
      footer { flex-wrap:wrap; gap:16px; }
      footer .brand { width:100%; }
    }
    @media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .button { transition:none; } }
    .brand-caption { display:block; margin-top:9px; font:11px/1.4 "Segoe UI",Arial,sans-serif; letter-spacing:.02em; color:var(--muted); }
    .company-note { margin-top:20px; font-size:13px; color:var(--muted); }
    .about { padding:65px 0 0; max-width:780px; }
    .about p { margin-top:20px; color:var(--muted); }
    .contact-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 50px; margin:26px 0; }
    .contact-grid dt { font-size:12px; color:var(--muted); margin-bottom:5px; }
    .contact-grid dd { margin:0; font-size:16px; }
    .contact-grid a { text-decoration:underline; text-underline-offset:4px; }
    .contact-main { display:block; }
    .contact-main .button { margin-top:4px; }
    .legal-footer { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:25px; }
    .legal-footer .brand { margin-bottom:16px; display:inline-block; }
    .legal-links { display:grid; gap:9px; }
    .legal-links a:first-child { display:block; }
    .legal-links a,.policy a { text-decoration:underline; text-underline-offset:3px; }
    .legal-links a:hover,.policy a:hover { color:var(--accent); }
    .footer-address { font-style:normal; }
    .footer-requisites { margin:8px 0; color:var(--ink); line-height:1.55; }
    .policy { max-width:800px; padding:52px 0 65px; }
    .policy h1 { font:clamp(34px,5vw,54px)/1.12 Georgia,serif; letter-spacing:-1.3px; margin:20px 0; overflow-wrap:anywhere; }
    .policy h2 { font:500 22px/1.35 "Segoe UI",Arial,sans-serif; letter-spacing:0; margin:32px 0 12px; }
    .policy p,.policy li { color:var(--muted); margin:12px 0; }
    .policy ul,.policy ol { padding-left:24px; }
    .policy .updated { font-size:13px; }
    .policy .contact-box { border:1px solid var(--line); border-radius:8px; padding:20px 24px; margin-top:24px; }
    .policy .contact-box p { margin:6px 0; }
    @media(max-width:680px) {
      .brand { font-size:28px; }
      nav { gap:14px; }
      .contact-grid,.legal-footer { grid-template-columns:1fr; }
      .about { padding-top:42px; }
      .policy { padding-top:32px; }
      .legal-footer .brand { width:auto; }
    }
