/* BROCADE ATELIER / CHROMATIC ROYAL EDITION
 * layered lacquer, mineral pigment, handwoven silk and restrained editorial typographic hierarchy.
 * All effects are CSS/SVG; no tracking, animation library, API or font-file dependencies.
 */
:root{
 --paper:#faf3e8;--parchment:#f5e9db;--ivory:#fffaf2;--jade:#174c52;--jade2:#246d72;--cinnabar:#a7404a;--gold:#ae803c;--gold2:#e0c58d;
 --ink:#283338;--muted:#66716f;--line:#ddcbb9;--shadow:0 25px 60px rgba(66,49,69,.105);
 --mulberry:#853d66;--cerulean:#457fa8;--saffron:#e3a34e;--sage:#5b8e7c;--pearl:#fffcf6;
 --font-display:Georgia,'Noto Serif TC','Noto Serif CJK TC',serif;
 --font-body:'Segoe UI','Noto Sans TC','Noto Sans CJK TC',system-ui,sans-serif;
}
body{background:var(--paper);background-image:radial-gradient(circle at 18% 7%,#fff4e4,transparent 22%),radial-gradient(circle at 85% 25%,rgba(226,158,180,.12),transparent 20%);}
body:before{opacity:.055;}
::selection{color:#fff9ec;background:#965478}
.top{background:rgba(254,249,241,.93);box-shadow:0 12px 40px rgba(48,42,55,.045)}
.top-inner{max-width:1580px;min-height:82px;gap:15px}
.logo{font-size:1.2rem;letter-spacing:.014em}
.logo em{color:#a4444f}
.seal{background:linear-gradient(145deg,#bd5660,#6f3150);color:#ffe9ad;box-shadow:inset 0 0 0 3px rgba(254,245,219,.25),0 6px 22px rgba(97,45,56,.17);border-color:#cfa15f;border-radius:10px}
.nav{gap:clamp(7px,1.05vw,17px)}
.nav a{font-size:.75rem;white-space:nowrap}
.nav a:hover{color:var(--cinnabar)}
.locale{margin-left:5px;border:1px solid #d7c5af;background:linear-gradient(135deg,#fffdf8,#f4ead8);box-shadow:0 5px 15px #8a74501a;max-width:120px;min-width:110px;border-radius:7px;padding:9px 7px;cursor:pointer}
.reading-progress{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;z-index:100;background:linear-gradient(90deg,#a43f52,#db875b,#e3b858,#60aa9b,#5590bb,#9754a4);pointer-events:none}
body .wrap{width:min(1370px,calc(100% - 62px))}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ac5574!important;outline-offset:3px}
/* Multilayered silk hero — luminous, maximalist artwork with an intentionally readable text field. */
.royal-hero{min-height:795px;padding:86px 0 64px;background:
 radial-gradient(ellipse at 76% 31%,rgba(241,159,166,.40) 0%,transparent 28%),
 radial-gradient(ellipse at 91% 76%,rgba(92,152,169,.23) 0%,transparent 32%),
 radial-gradient(ellipse at 14% 18%,rgba(252,219,154,.30) 0%,transparent 35%),
 linear-gradient(126deg,#fffcf6 0%,#faeddd 43%,#f7e4e1 77%,#f6ead8 100%);}
.royal-hero:before,.royal-hero:after{width:900px;height:900px;top:-520px;right:-400px;border-color:#b9966245;}
.royal-hero:after{width:720px;height:720px;top:-420px;right:-315px}
.hero-grain{position:absolute;inset:0;opacity:.23;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent 0 28px,#cdbd9c16 29px),repeating-linear-gradient(90deg,transparent 0 28px,#baa68f14 29px)}
.royal-hero-grid{grid-template-columns:1.06fr .94fr;min-height:628px;gap:0}
.royal-hero .hero-copy{z-index:2;position:relative;padding-right:10px}
.royal-hero h1{font-size:clamp(3.8rem,6.3vw,7.5rem);max-width:860px;line-height:1.11;margin:30px 0;color:#214c52;background:linear-gradient(125deg,#193e50 10%,#694462 40%,#b34f55 70%,#61416a 95%);background-clip:text;-webkit-text-fill-color:transparent}
.royal-hero .hero-desc{font-size:1.05rem;line-height:1.95;max-width:575px;color:#606665}
.royal-eyebrow{color:#925471;border-left:3px solid #ae6a58;padding-left:13px;letter-spacing:.23em}
.royal-hero .button.primary,.royal-final .button.primary,.royal-budget .button.primary{background:linear-gradient(115deg,#824761,#bd5657,#cc8060);border-color:transparent;color:#fffaf0;box-shadow:0 12px 30px rgba(164,67,82,.19)}
.button.primary:hover{filter:brightness(1.09)}
.royal-hero .hero-foot{display:flex;flex-wrap:wrap;gap:10px 16px;margin-top:28px;color:#75676b;font-size:.77rem}
.royal-hero .hero-foot span{border-right:1px solid #cbb9aa;padding-right:15px}
.royal-hero .hero-foot span:last-child{border-right:0}
.hero-scroll{display:inline-block;margin-top:50px;letter-spacing:.16em;font-size:.66rem;color:#82546e;font-weight:800;border-bottom:1px solid #b7a189;padding-bottom:9px}
.royal-visual{position:relative;min-height:610px;align-self:center;display:grid;place-items:center;isolation:isolate}
.royal-visual img{width:min(100%,775px);height:auto;max-height:735px;object-fit:contain;filter:drop-shadow(0 24px 29px rgba(99,58,75,.14));animation:silkFloat 11s ease-in-out infinite;position:relative;z-index:2}
.hero-aurora{position:absolute;inset:7% 4%;border-radius:48% 52% 51% 49%;background:conic-gradient(from 44deg,rgba(229,137,139,.27),rgba(237,196,95,.27),rgba(91,160,119,.23),rgba(71,146,175,.27),rgba(170,111,169,.25),rgba(229,137,139,.27));filter:blur(32px);z-index:0}
.hero-stamp{position:absolute;right:4%;top:10%;font-size:12px;letter-spacing:.3em;line-height:1.7;color:#9b6470;writing-mode:vertical-rl;z-index:4}
.hero-bottom-weave{height:12px;position:absolute;bottom:0;left:0;right:0;background:repeating-linear-gradient(90deg,#874e68 0 19px,#c38a8f 19px 38px,#eabf88 38px 57px,#83ae9e 57px 76px,#6a96b0 76px 95px,#a686b2 95px 114px)}
@keyframes silkFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-12px,0)}}
@media(prefers-reduced-motion:reduce){.royal-visual img{animation:none}.reading-progress{transition:none!important}html{scroll-behavior:auto!important}}
/* Typographic hierarchy and section atmosphere */
.section{padding:115px 0}
.section-head{max-width:880px;margin-bottom:47px}
.section-head h2{color:#264a4b;font-size:clamp(2.5rem,4.5vw,5.1rem);line-height:1.18;margin:13px 0 20px}
.section-head p{font-size:1.03rem;line-height:1.9;color:#647073;max-width:735px}
.section-head.center{margin-left:auto;margin-right:auto}
.section h2{line-height:1.19}
.section .eyebrow{color:#a54e61}
.section-footer-link{display:flex;justify-content:center;gap:14px;margin-top:38px}
.text-link{color:#9e4b58;text-decoration:underline;text-underline-offset:5px;font-weight:800}
/* Distinctive numerals */
.atelier-tally{display:grid;grid-template-columns:2.3fr repeat(4,1fr);border-block:1px solid #d8c8b5;align-items:center;padding-top:26px;padding-bottom:26px;gap:20px}
.tally-intro{padding-right:25px;border-right:1px solid #ddc9b7}
.tally-intro p{font-size:.9rem;color:#72706b;margin:5px 0 0;line-height:1.6}
.tally-item{display:grid;justify-items:center;gap:3px;min-height:88px;align-content:center;border-right:1px solid #e3d6c5}
.tally-item:last-child{border:0}
.tally-item strong{font-family:var(--font-display);font-size:3rem;line-height:1;background:linear-gradient(140deg,#b34f66,#b67d48,#467d84);background-clip:text;-webkit-text-fill-color:transparent}
.tally-item span{font-size:.72rem;color:#6b7773;letter-spacing:.08em}
/* 15 reserve positions, not active ads. Small, clearly separated from interactions. */
.ad-container{padding-top:17px;padding-bottom:17px}
.ad-reserve{display:flex;align-items:center;justify-content:center;gap:20px;min-height:58px;padding:10px 20px;max-width:100%;border:1px dashed rgba(147,133,120,.35);border-radius:4px;background:repeating-linear-gradient(135deg,rgba(246,237,223,.8) 0 11px,rgba(250,244,234,.75) 11px 22px);color:#9b9185;letter-spacing:.08em;font-size:.68rem}
.ad-reserve .ad-index{font-size:.66rem;font-weight:700;opacity:.65;letter-spacing:.12em}
.ad-reserve .ad-label{font-size:.67rem;font-weight:700;color:#6c7674}
.ad-reserve .ad-message{letter-spacing:0;font-size:.67rem}
/* Skill cards in offset architectural grid */
.royal-feature-section{background:radial-gradient(circle at 6% 15%,#fae8d6,transparent 30%),radial-gradient(circle at 93% 81%,#e8dce4,transparent 28%),#fff9f0}
.royal-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.royal-feature{position:relative;min-height:280px;padding:35px 32px;border-radius:5px 40px 5px 40px;background:linear-gradient(145deg,rgba(255,255,254,.91),rgba(249,240,229,.91));border:1px solid #e7d3c2;box-shadow:0 10px 40px rgba(92,58,72,.06);overflow:hidden;transition:transform .2s,box-shadow .2s}
.royal-feature:hover{transform:translateY(-7px);box-shadow:0 26px 55px rgba(87,48,69,.14)}
.royal-feature::before{content:"";position:absolute;left:0;top:0;width:100%;height:6px;background:linear-gradient(90deg,#ab4e64,#e1a468,#57a08d,#638bae,#ab4e64)}
.royal-feature:nth-child(2)::before{filter:hue-rotate(60deg)}.royal-feature:nth-child(3)::before{filter:hue-rotate(140deg)}.royal-feature:nth-child(4)::before{filter:hue-rotate(200deg)}
.feature-mark{display:inline-grid;place-items:center;width:65px;height:65px;color:#9e5668;font-size:2.1rem;border-radius:50%;background:linear-gradient(130deg,#f0d7d3,#f9ead4);margin-bottom:22px}
.feature-number{position:absolute;right:28px;top:22px;font-size:4rem;color:#bb987a20;font-family:Georgia,serif;line-height:1}
.royal-feature h3{font-size:1.55rem;color:#274c50;margin:0 0 12px}
.royal-feature p{font-size:.91rem;line-height:1.8;color:#646d6a;margin:0}
/* gallery: real route links to data-backed cutting templates */
.pattern-section{background:linear-gradient(180deg,#f8ebdf,#f5e8e8 52%,#f9f1e7)}
.royal-pattern-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:21px}
.royal-pattern-tile{display:block;overflow:hidden;min-height:425px;border-radius:6px 40px 6px 30px;border:1px solid #e7cdb9;background:#fffaf2;box-shadow:0 10px 35px #885c6912;transition:transform .25s,box-shadow .25s}
.royal-pattern-tile:hover{transform:translateY(-7px);box-shadow:0 25px 50px #885c692e}
.pattern-tile-art{height:220px;position:relative;overflow:hidden;isolation:isolate;background:linear-gradient(125deg,color-mix(in srgb,var(--tile-accent) 25%,#fff8de),color-mix(in srgb,var(--tile-accent) 65%,#b6a4af))}
.pattern-tile-art:before{content:"";position:absolute;inset:-60px -50px;background:radial-gradient(circle at 52% 50%,#fff6e8a6,transparent 39%),repeating-conic-gradient(from 25deg at 50% 50%,#f0e0cc35 0 12deg,transparent 12deg 24deg);transform:rotate(-12deg)}
.pattern-tile-art:after{content:"";position:absolute;inset:15px;border:1px solid #fff7e099;pointer-events:none}
.pattern-art-seal{position:absolute;right:33px;top:13px;color:#fff7d5b3;font-size:5rem;font-family:serif}
.pattern-art-cut{position:absolute;display:block;box-shadow:5px 12px 25px #64384d21;border:2px solid #f9dfb0;transform:rotate(-14deg);border-radius:1px 25px 3px 20px;background:linear-gradient(125deg,#fffcf99c,var(--tile-accent))}
.cut-a{width:42%;height:76%;top:29%;left:16%}.cut-b{width:27%;height:59%;top:-10%;left:47%;transform:rotate(19deg)}.cut-c{width:25%;height:43%;top:29%;left:70%;transform:rotate(-26deg)}
.pattern-tile-copy{padding:25px 28px 30px}.pattern-tile-copy small{font-size:.63rem;letter-spacing:.2em;font-weight:700;color:#a37070}.pattern-tile-copy h3{font-size:1.6rem;color:#254b4c;margin:9px 0}.pattern-tile-copy p{font-size:.87rem;line-height:1.8;color:#6c746d;min-height:74px}.pattern-go{color:#a24f5b;font-weight:800;font-size:.8rem}
/* 400-color atlas preview */
.rainbow-section{background:linear-gradient(155deg,#263f4b,#293e4f 24%,#523a5d 58%,#814e64 86%,#b26a58);color:#fff3df;position:relative;overflow:hidden}
.rainbow-section:before{content:"";position:absolute;width:690px;height:690px;right:-180px;top:-290px;border:1px solid #f4d5a95c;border-radius:50%;box-shadow:0 0 0 50px #e4cda80e,0 0 0 105px #e4cda80b;pointer-events:none}
.rainbow-section .eyebrow{color:#eac98b}.rainbow-section h2{color:#fff4e6;font-size:clamp(3rem,5.5vw,6.1rem);max-width:780px}
.rainbow-section p{color:#e8d8d2;max-width:690px;font-size:1.04rem;line-height:1.9}
.rainbow-section .button.outline{color:#fff4e7;border-color:#eac89194;background:#fff7e514}
.color-editorial{display:grid;grid-template-columns:1fr .5fr;align-items:center;gap:30px;margin-bottom:52px}
.color-poster{min-height:320px;display:grid;place-items:center;border:1px solid #fce8c070;background:conic-gradient(from 155deg,#a64c65,#d4a36d,#7ea27d,#5b8eb1,#8266a4,#a64c65);border-radius:48% 48% 45% 52%;box-shadow:inset 0 0 0 18px #ffefdf24,0 35px 60px #231f352d;position:relative;transform:rotate(5deg)}
.color-poster:after{content:"";position:absolute;inset:35px;border:1px solid #fff6e2a8;border-radius:50%}
.color-poster-big{font-family:serif;font-size:clamp(2.5rem,4vw,5.5rem);text-shadow:0 8px 20px #3e2c4866;z-index:1}.color-poster-small{position:absolute;bottom:40px;letter-spacing:.2em;font-size:.65rem;z-index:1}
.palette-band{height:23px;border:2px solid #ffedcda3;box-shadow:0 9px 32px #140d2238}
.palette-preview{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:4px;margin-top:15px}
.palette-preview i{aspect-ratio:1;min-width:0;background:var(--pigment);box-shadow:inset 0 0 0 1px #ffffff3f;transition:transform .2s}
.palette-preview i:hover{transform:scale(1.15);z-index:2}
.palette-caption{display:flex;align-items:center;justify-content:space-between;margin-top:15px;font-size:.78rem;letter-spacing:.1em;color:#e4d2c7}.palette-caption a{text-decoration:underline;text-underline-offset:4px;color:#fff0be}
/* calculator panel */
.royal-budget{background:linear-gradient(125deg,#fff8ea,#f5e4dc,#f7e5e9)}.royal-budget .section-grid{align-items:center}
.royal-budget h2,.workflow-royal h2,.preflight-section h2,.faq-royal-section h2{font-size:clamp(2.5rem,4.5vw,4.9rem);color:#264c50;margin:20px 0}.royal-budget p{max-width:570px;color:#64706c;font-size:1.03rem}
.budget-calc{background:linear-gradient(130deg,#fffdf8,#f7eee5);border:1px solid #ddc7b4;padding:34px;border-radius:8px 46px 8px 46px;box-shadow:0 24px 62px #94626c25;position:relative;overflow:hidden}
.budget-calc:before{content:"";position:absolute;top:0;left:0;right:0;height:7px;background:linear-gradient(90deg,#8b4961,#de8b69,#ddc670,#76a0a3,#8c64a1)}
.budget-head{display:flex;align-items:center;gap:15px;font-size:.7rem;letter-spacing:.16em;color:#9d7e69;margin-bottom:19px}
.budget-seal{width:45px;height:45px;border-radius:10px;background:#a9515b;color:#fff0cd;font-size:24px;display:grid;place-items:center;font-family:serif}
.budget-calc .field{color:#365359}.budget-calc input{background:#fffbf4;border-color:#dcc7b7}
.budget-result{margin-top:22px;padding:24px;background:linear-gradient(120deg,#24525b,#4b5f79,#8b5b72);border-radius:8px;color:#fff7e6;display:grid;gap:8px}.budget-result small{color:#e5d4d2}.budget-result strong{font:500 clamp(2.4rem,4vw,4.5rem)/1.15 Georgia,serif;letter-spacing:-.04em}
/* Step stones */
.workflow-royal{background:#f9f5eb}.workflow-royal .section-head.center{text-align:center}.royal-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.royal-step{position:relative;padding:34px 30px 36px;background:#fffcf6;border:1px solid #e5d3bf;border-radius:120px 120px 8px 8px;text-align:center;min-height:280px}.step-orb{display:grid;place-items:center;margin:0 auto 25px;width:76px;height:76px;border:1px solid #e2c9a9;border-radius:50%;font:italic 2.2rem Georgia,serif;color:#a94e63;background:radial-gradient(circle,#fbecdc,#fffaf2)}.royal-step h3{font-size:1.6rem;color:#2a5a58}.royal-step p{color:#6f7772;font-size:.92rem}
/* calculators and library */
.cabinet-section{background:linear-gradient(135deg,#e8ece4,#f6f1e4 50%,#f6e9df)}
.calculator-links{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.calc-link{display:flex;gap:22px;align-items:center;background:linear-gradient(125deg,#fffef9,#faf3e8);padding:23px 25px;border-radius:6px 28px 6px 28px;border:1px solid #dfd4c4;transition:transform .2s,box-shadow .2s}.calc-link:hover{transform:translateY(-4px);box-shadow:0 20px 35px #6d647023}.calc-icon{flex:0 0 55px;height:55px;border-radius:50%;background:linear-gradient(140deg,#f2d7cb,#dfebd7);display:grid;place-items:center;font-size:1.8rem;color:#915a70}.calc-link span:nth-child(2){flex:1}.calc-link strong{display:block;font-size:1rem;color:#31585b;margin-bottom:5px}.calc-link small{display:block;font-size:.82rem;line-height:1.65}.calc-link i{font-style:normal;font-size:1.3rem;color:#ad5062}
.royal-library{background:linear-gradient(170deg,#fcf5ea,#f0e9e3)}.royal-guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.guide-link-card{background:#fffdf7;padding:27px 28px 32px;min-height:365px;border:1px solid #e2d0bd;box-shadow:0 8px 25px #674c4922;border-radius:8px 28px 8px 28px;transition:transform .2s}.guide-link-card:hover{transform:translateY(-5px)}.guide-glyph{display:grid;place-items:center;height:75px;width:75px;border-radius:45% 55% 62% 38%;background:conic-gradient(from 90deg,#eed0bf,#c8dac4,#b4cdda,#e5bed2,#eed0bf);color:#79516b;font-size:2.6rem;margin-bottom:18px}.guide-count{font-size:.6rem;letter-spacing:.15em;color:#b28573}.guide-link-card h3{font-size:1.52rem;color:#315359;margin:11px 0}.guide-link-card p{font-size:.84rem;line-height:1.74;color:#6d7773;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
/* interactive preflight */
.preflight-section{background:#fff7ed}.preflight-section .section-grid{align-items:center;gap:8%}.preflight-image{min-height:655px;position:relative;border:1px solid #e1cfa9;border-radius:45% 43% 8px 8px;background:radial-gradient(circle at 40% 30%,#fae7d2,transparent 39%),linear-gradient(135deg,#b56d7a,#604f78,#456d81);overflow:hidden;display:grid;place-items:center}.preflight-halo{position:absolute;border:3px double #f2d8aa;border-radius:50%;width:78%;aspect-ratio:1;box-shadow:0 0 0 20px #fff9e619,0 0 0 55px #fff9e610}.preflight-symbol{font-size:clamp(7rem,17vw,16rem);font-family:serif;color:#fbebc7b8;z-index:3;text-shadow:0 10px 45px #3d384d50}.preflight-silk{position:absolute;width:130%;height:230px;top:56%;left:-10%;transform:rotate(-18deg);border-top:8px solid #ffe1a9;background:linear-gradient(100deg,#8b4c77,#b689bc,#f5bd80,#c76170,#3b919a);box-shadow:0 28px 50px #241e3847;opacity:.86}.preflight-caption{position:absolute;bottom:35px;color:#fff5dd;z-index:5;letter-spacing:.25em;font-size:.68rem}
.preflight-section p{color:#65716e;line-height:1.9}.preflight-list{display:grid;gap:11px;margin:25px 0 20px}.royal-check{display:flex;align-items:center;gap:14px;padding:13px 15px;background:#fffdf8;border:1px solid #ead6bf;border-radius:10px;color:#435854;cursor:pointer;transition:background .2s}.royal-check:hover{background:#f8ede0}.royal-check input{width:20px;height:20px;accent-color:#427c6a;cursor:pointer}.custom-check{display:none}.royal-check:has(input:checked){background:#e9f2e9;border-color:#b2d0b8}.preflight-progress{display:flex;justify-content:space-between;font-size:.82rem;color:#49746c;font-weight:700}.preflight-track{height:7px;background:#e6d9cb;border-radius:99px;overflow:hidden;margin-top:7px}.preflight-track div{height:100%;background:linear-gradient(90deg,#b75d6b,#dfb06c,#5e9a81);width:0;transition:width .25s}.preflight-finish{font-size:.85rem;color:#347254!important;margin-top:12px}
/* matching physical constraints */
.examples-section{background:#f1edf0}.example-duo{display:grid;grid-template-columns:repeat(2,1fr);gap:25px}.example-story{padding:28px 28px 34px;border:1px solid #e0d1c3;border-radius:6px 36px 6px 36px;background:#fffaf4}.example-story h3{margin:22px 0 8px;color:#285961}.example-story p{min-height:100px;font-size:.92rem;color:#657374;line-height:1.85}.example-graphic{height:325px;display:grid;place-items:center;background:linear-gradient(135deg,#f4e0d9,#c8d6d8);border-radius:4px 30px 4px 30px;overflow:hidden}.graphic-bolt{width:67%;height:80%;position:relative;background:#f8ebcd;border:2px dashed #bd975f;box-shadow:10px 13px 0 #dfc7af}.fold-line{position:absolute;left:0;top:0;bottom:0;border-left:5px solid #ad3d4e}.graphic-piece{position:absolute;background:linear-gradient(135deg,#799ea6,#396d71);border:2px solid #e6f0df;box-shadow:2px 8px 10px #4560683c}.graphic-piece.one{width:35%;height:38%;left:2%;top:8%}.graphic-piece.two{width:42%;height:34%;left:45%;top:13%}.graphic-piece.three{width:55%;height:37%;left:24%;top:59%}.grain-graphic{background:linear-gradient(125deg,#e8c7b4,#d9c8dd)}.grain-graphic .graphic-bolt{background:repeating-linear-gradient(90deg,#eed4c3 0 13px,#f9e5d2 13px 24px)}.grain-lines{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 23px,#c07e7859 23px 25px)}.grain-graphic .graphic-piece{background:linear-gradient(160deg,#c18d96,#996280)}
/* testimonial-free editorial affirmation (avoid fake customer reviews) */
.royal-quote-section{background:radial-gradient(circle at 80% 30%,#4777824a,transparent 45%),linear-gradient(120deg,#233f4d,#4e4668,#734967);color:#fff2dd;text-align:center;overflow:hidden}.royal-quote-art{display:flex;justify-content:center;gap:20px;color:#e7c38877;font:7rem/1.1 serif;letter-spacing:.2em;margin-bottom:35px}.royal-quote{font-family:var(--font-display);font-size:clamp(1.8rem,3vw,3.3rem);max-width:970px;margin:0 auto;line-height:1.5;border:none}.royal-quote cite{display:block;font-family:var(--font-body);font-style:normal;font-size:.67rem;letter-spacing:.23em;color:#eacba4;margin-top:32px}.quote-footnote{font-size:.81rem;line-height:1.8;color:#eadfdbb0;max-width:850px;margin:24px auto 0}
/* serious SEO editorial reading */
.editorial-section{background:#fff9f0}.editorial-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:10%;align-items:start}.editorial-aside{position:sticky;top:126px}.editorial-aside h2{font-size:clamp(2.5rem,4vw,4.5rem);color:#2b555b;margin:20px 0 35px}.editorial-articles{border-top:1px solid #ceb8a2}.editorial-chapter{display:grid;grid-template-columns:65px 1fr;column-gap:22px;padding:32px 0;border-bottom:1px solid #ddcbb8}.editorial-chapter>span{color:#b8806a;font:italic 2rem Georgia,serif;grid-row:span 2}.editorial-chapter h3{color:#365961;font-size:1.5rem;margin-bottom:9px}.editorial-chapter p{color:#64726e;font-size:.95rem;line-height:1.94;margin:0}
.faq-royal-section{background:linear-gradient(135deg,#f0e2e8,#f8eee3)}.faq-royal-section .section-grid{align-items:start}.royal-faq-list .royal-faq{margin-bottom:9px;background:#fffcf5;box-shadow:0 5px 12px #7466650a}.royal-faq-list summary{color:#3e5c5d}
.privacy-royal{background:#f8f7f0}.privacy-royal-inner{display:grid;grid-template-columns:110px 1fr auto;gap:25px;align-items:center;background:linear-gradient(120deg,#e9f0e8,#f3e8e6);border:1px solid #d8d2c4;padding:43px 55px;border-radius:7px 45px 7px 45px}.privacy-diamond{font-size:5rem;line-height:1;color:#5e9283}.privacy-royal h2{font-size:2rem;margin:8px 0 6px;color:#315a59}.privacy-royal p{margin:0;font-size:.92rem;color:#5d716c}
.royal-final{position:relative;overflow:hidden;background:radial-gradient(circle at 80% 15%,#d9a9b7a1,transparent 32%),linear-gradient(115deg,#fff4e5,#f3dfdf,#dde9e5)}.royal-final-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:8%;align-items:center}.final-symbol{height:370px;display:grid;place-items:center;color:#fff6deb8;font-size:11rem;font-family:serif;border:12px double #e7c88db4;background:conic-gradient(from 50deg,#ad5263,#d3a964,#638d85,#667ca6,#ad5263);border-radius:50%;box-shadow:0 25px 50px #9656643a}.royal-final h2{font-size:clamp(2.9rem,5vw,5.9rem);color:#2d4c58;margin:16px 0}.royal-final p{font-size:1.05rem;color:#66646d}
/* globally polished interior pages, studio is not replaced */
.page-hero{background:radial-gradient(circle at 90% 20%,#e3bbcd6b,transparent 28%),radial-gradient(circle at 15% 85%,#c9e0c46b,transparent 34%),linear-gradient(120deg,#fff8ec,#f2e8e5)}
.page-hero h1{color:#31545b}.panel,.calc-card,.template-card{box-shadow:0 12px 34px #73556a1a}.panel-head{background:linear-gradient(105deg,#fff7e8,#f3e2d9)}
.button{border-radius:7px}.button.primary{background:linear-gradient(110deg,#2d6972,#52786d);box-shadow:0 7px 19px #27646826}
.footer{background:linear-gradient(125deg,#233f4c,#474358,#513d4f);color:#fff8e8}
.footer p,.footer small,.footer-bottom{color:#dbcfc6!important}
.footer a{color:inherit}
/* The 400-color archive — actual interactive content */
.palette-hero{padding:65px 0 80px;background:radial-gradient(circle at 65% 25%,#e7a9c270,transparent 29%),linear-gradient(120deg,#fef8ed,#eadde8,#d8e5df)}
.palette-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:25px;align-items:center}.palette-hero h1{max-width:780px;font-size:clamp(3.2rem,6vw,6rem);background:linear-gradient(120deg,#2a5159,#a54e73,#b38451);background-clip:text;-webkit-text-fill-color:transparent;margin:20px 0}.palette-hero p{max-width:620px;line-height:1.9;font-size:1.03rem;color:#5d6268}
.palette-hero .hero-foot{display:flex;gap:16px;font-size:.75rem;letter-spacing:.13em;color:#8b606c}
.palette-hero-wheel{width:min(100%,430px);aspect-ratio:1;margin:auto;display:grid;place-items:center;border-radius:50%;border:15px double #f9e8be;background:conic-gradient(#aa3d5e,#d57d62,#dcab59,#8ba95e,#4a8c84,#5193a3,#637bba,#9c72b4,#ba5988,#aa3d5e);box-shadow:inset 0 0 0 32px #ffefcd30,0 35px 75px #67516738;position:relative}
.palette-hero-wheel:after{content:"";position:absolute;inset:16px;border:1px solid #fff4e0aa;border-radius:50%}.palette-wheel-inner{width:43%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#fdf3e5,#ead4c1);font:6rem serif;color:#a05169;box-shadow:0 10px 35px #573d5540}
.palette-intro-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:8%;align-items:center;margin:16px 0 55px}.palette-intro-grid h2{font-size:clamp(2.5rem,4vw,4.3rem);color:#28505a;margin:15px 0}.palette-intro-grid p{max-width:710px;color:#68726e}
.palette-about-card{background:linear-gradient(135deg,#694863,#375d67);color:#fff1df;border-radius:9px 35px;padding:27px 32px;display:grid;gap:10px}.palette-about-card strong{font:5rem/1 Georgia,serif;color:#ffe6a2}.palette-about-card>span{font-size:.73rem;letter-spacing:.13em}.palette-about-card small{color:#e9d8d9;line-height:1.7}
.palette-workspace{border:1px solid #ddc9b6;background:linear-gradient(135deg,#fefaf4,#f3ece7);box-shadow:0 25px 60px #79687219;border-radius:8px 40px 8px 40px;padding:26px}
.palette-controls{border-bottom:1px solid #decfbd;padding:8px 6px 22px}.palette-filters{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 17px}.filter-chip{border:1px solid #d4c6b4;border-radius:20px;padding:8px 14px;background:#fffaf0;font-weight:700;font-size:.81rem;color:#4b6566}.filter-chip:hover{background:#f4e6dc}.filter-chip.active{background:linear-gradient(115deg,#915472,#3b7077);color:white;border-color:transparent}
.palette-search-row{display:flex;gap:20px;align-items:end}.palette-search-row .field{flex:1;margin:0}.palette-search-row input{background:#fffdf8}.favorite-switch{display:flex;align-items:center;gap:10px;font-size:.84rem;cursor:pointer;white-space:nowrap;padding:12px}.favorite-switch input{width:18px;height:18px;accent-color:#ab536b}.palette-results-caption{display:flex;justify-content:space-between;font-size:.77rem;color:#7d7971;margin-top:13px}
.palette-main{display:grid;grid-template-columns:1fr 300px;gap:26px;padding:26px 6px 8px}.palette-swatch-grid{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:4px}.palette-swatch{aspect-ratio:1;border:1px solid #ffffff85;padding:0;min-width:0;border-radius:2px;position:relative;transition:transform .13s,box-shadow .13s;box-shadow:0 2px 5px #382e3215}.palette-swatch:hover{transform:scale(1.25);z-index:4;box-shadow:0 6px 15px #222c3044}.palette-swatch.selected{outline:3px solid #242f3b;outline-offset:1px;z-index:5}.palette-swatch.favorited:after{content:'♥';color:#fffaf3;text-shadow:0 1px 3px #23232388;font-size:.58rem;position:absolute;top:0;right:2px}
.palette-detail{padding:23px;background:#fff9ed;border:1px solid #e1cfb8;border-radius:7px 29px 7px 29px;align-self:start;position:sticky;top:105px}.palette-detail-art{height:185px;border-radius:4px 25px 4px 25px;display:grid;place-items:center;margin-bottom:23px;box-shadow:inset 0 0 0 7px #fffaed4d}.palette-detail-mark{font:5.5rem serif;color:#fff6d0b8}.palette-detail h3{font-size:1.5rem;color:#365960;margin:7px 0 3px}.color-hex{font:2.2rem Georgia,serif;color:#a05265;margin:0 0 14px}.palette-action-row{display:flex;flex-wrap:wrap;gap:8px}.palette-detail .button{font-size:.75rem;padding:9px 12px;min-height:39px}.palette-complements{border-top:1px solid #dac5b2;padding-top:15px;margin-top:15px}.palette-complements strong{font-size:.75rem;color:#63716e}.palette-complements>div{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0 24px}.palette-complements button{height:55px;border:1px solid #fffdeda3;border-radius:5px}.palette-complements button:hover{outline:2px solid #3e4950}.palette-footer-content{padding:100px 0 60px}.palette-footer-content .section-head{text-align:center;margin:0 auto 20px}.palette-footer-content .section-head h2{font-size:clamp(2.4rem,4vw,4rem)}
/* responsiveness */
@media(max-width:1270px){.top-inner{gap:10px}.nav{gap:9px}.nav a{font-size:.7rem}.logo{font-size:1rem}.top-inner .seal{width:36px;height:36px}}
@media(max-width:1080px){.nav{display:none}.mobile-menu{display:inline-flex;margin-left:auto}.mobile-nav.open{display:block}.top-inner .locale{margin-left:4px}.royal-hero-grid{grid-template-columns:1fr .9fr}.royal-hero h1{font-size:clamp(3.6rem,6.4vw,5.8rem)}.royal-pattern-grid,.royal-guide-grid{grid-template-columns:repeat(2,1fr)}.atelier-tally{grid-template-columns:repeat(4,1fr)}.tally-intro{grid-column:1/-1;border-right:none;text-align:center}.palette-main{grid-template-columns:1fr 270px}.palette-swatch-grid{grid-template-columns:repeat(16,1fr)}}
@media(max-width:830px){body .wrap{width:calc(100% - 34px)}.section{padding:75px 0}.royal-hero{padding:64px 0;min-height:0}.royal-hero-grid{grid-template-columns:1fr}.royal-hero .hero-copy{padding:0}.royal-hero h1{max-width:780px;font-size:clamp(3.25rem,9vw,5.7rem)}.royal-visual{min-height:0;margin-top:25px}.royal-visual img{max-height:560px}.royal-feature-grid{grid-template-columns:repeat(2,1fr)}.atelier-tally{grid-template-columns:repeat(4,1fr)}.color-editorial,.royal-final-layout,.palette-hero-grid,.palette-intro-grid{grid-template-columns:1fr}.color-poster{max-width:350px;min-height:270px}.royal-budget .section-grid,.preflight-section .section-grid,.faq-royal-section .section-grid{grid-template-columns:1fr}.preflight-image{min-height:410px}.editorial-grid{grid-template-columns:1fr}.editorial-aside{position:static}.editorial-aside h2{max-width:700px}.royal-final-layout{gap:20px}.final-symbol{height:300px;width:300px}.privacy-royal-inner{grid-template-columns:75px 1fr}.privacy-royal-inner .button{grid-column:2;justify-self:start}.palette-hero-wheel{max-width:310px}.palette-main{grid-template-columns:1fr}.palette-detail{position:static;display:grid;grid-template-columns:175px 1fr;gap:10px 15px}.palette-detail-art{grid-row:1/6;height:205px}.palette-detail .palette-complements{grid-column:1/-1}.palette-detail #exportFavorites{grid-column:1/-1;justify-self:start}.palette-swatch-grid{grid-template-columns:repeat(20,1fr)}}
@media(max-width:590px){.top-inner{min-height:68px}.logo{font-size:.84rem}.logo .seal{width:32px;height:32px;font-size:.9rem}.locale{max-width:104px;min-width:96px;padding:8px 4px;font-size:.72rem}.royal-hero h1{font-size:clamp(2.9rem,10.5vw,4.5rem)}.hero-scroll{margin-top:30px}.royal-hero .hero-desc{font-size:.94rem}.section-head h2{font-size:clamp(2.5rem,9vw,3.4rem)}.section-head p{font-size:.92rem}.atelier-tally{gap:6px;grid-template-columns:repeat(2,1fr)}.tally-item strong{font-size:2.55rem}.royal-feature-grid,.royal-pattern-grid,.royal-guide-grid,.royal-step-grid,.calculator-links,.example-duo{grid-template-columns:1fr}.royal-feature{min-height:0;padding:27px}.royal-pattern-tile{min-height:0}.pattern-tile-copy p{min-height:0}.palette-preview{grid-template-columns:repeat(10,1fr);gap:4px}.rainbow-section h2{font-size:clamp(2.8rem,11vw,4rem)}.color-poster{display:none}.budget-calc{padding:24px}.royal-step{min-height:0;border-radius:110px 110px 8px 8px}.preflight-image{min-height:340px}.preflight-symbol{font-size:9rem}.preflight-silk{height:160px}.editorial-chapter{grid-template-columns:40px 1fr;gap:12px}.editorial-chapter>span{font-size:1.4rem}.royal-quote-art{font-size:5rem}.privacy-royal-inner{padding:25px 18px;grid-template-columns:1fr}.privacy-diamond{font-size:3rem}.privacy-royal-inner .button{grid-column:1}.final-symbol{height:220px;width:220px;font-size:7rem}.ad-reserve{min-height:48px;gap:10px;padding:8px 6px}.ad-reserve .ad-message{display:none}.palette-swatch-grid{grid-template-columns:repeat(12,1fr)}.palette-main{gap:17px;padding:18px 0}.palette-workspace{padding:18px 13px}.palette-search-row{flex-direction:column;align-items:stretch;gap:8px}.palette-detail{display:block}.palette-detail-art{height:150px}.palette-hero-wheel{max-width:260px}.palette-hero h1{font-size:clamp(2.8rem,9vw,4rem)}.palette-about-card strong{font-size:4rem}}
@media print{.reading-progress,.ad-reserve,.hero-aurora{display:none!important}.royal-visual img{animation:none}}
