:root { --ink:#27221f; --paper:#f4f4f1; --paper-deep:#e7e6e1; --orange:#ff5a00; --orange-soft:#ffd3b9; --white:#fcfcfa; --line:rgba(39,34,31,.16); --serif:Georgia,"Times New Roman",serif; --sans:"Helvetica Neue",Helvetica,Arial,sans-serif; --page-gutter:max(clamp(1.25rem,5vw,5.5rem),calc((100vw - 1600px)/2)); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); overflow-x:hidden; }
img { max-width:100%; }
a { color:inherit; text-decoration:none; }
button { color:inherit; font:inherit; }
::selection { background:var(--orange); color:white; }
.skip-link { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.75rem 1rem; background:white; border:1px solid var(--ink); }
.skip-link:focus { top:1rem; }
.page-shell { padding-left:max(var(--page-gutter),env(safe-area-inset-left)); padding-right:max(var(--page-gutter),env(safe-area-inset-right)); }
.section-space { padding-top:clamp(5.5rem,10vw,10rem); padding-bottom:clamp(5.5rem,10vw,10rem); }
[id] { scroll-margin-top:100px; }

.announcement { min-height:32px; background:var(--orange); display:grid; place-items:center; padding:.55rem 1rem; text-align:center; font-size:.62rem; font-weight:800; letter-spacing:.14em; }
.site-header { min-height:84px; padding-left:max(var(--page-gutter),env(safe-area-inset-left)); padding-right:max(var(--page-gutter),env(safe-area-inset-right)); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); background:rgba(244,244,241,.94); backdrop-filter:blur(12px); position:sticky; top:0; z-index:30; }
.brand { display:inline-flex; align-items:center; gap:.75rem; }
.brand-mark { width:46px; height:46px; border-radius:14px; overflow:hidden; flex:0 0 auto; box-shadow:0 0 0 1px rgba(39,34,31,.12); }
.brand-mark img { display:block; width:100%; height:100%; object-fit:cover; }
.brand-name { font:700 1.55rem var(--serif); letter-spacing:-.035em; }
.brand-name strong { color:var(--orange); font-style:italic; font-weight:700; }
.main-nav { display:flex; align-items:center; gap:clamp(1rem,2vw,2rem); font-size:.72rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase; }
.main-nav>a:not(.nav-button):hover { color:var(--orange); }
.nav-button,.primary-button { background:var(--ink); color:white; border-radius:999px; padding:.95rem 1.35rem; transition:transform .2s ease,background .2s ease; }
.nav-button:hover,.primary-button:hover { background:var(--orange); color:var(--ink); transform:translateY(-2px); }
.menu-button { display:none; border:0; background:transparent; padding:.5rem; cursor:pointer; }
.menu-button span { display:block; width:25px; height:1px; background:var(--ink); margin:6px; }

.hero { min-height:calc(100svh - 116px); display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.8fr); align-items:center; gap:clamp(3rem,8vw,9rem); padding-top:clamp(4rem,7vw,7rem); padding-bottom:clamp(4rem,7vw,7rem); }
.eyebrow { margin:0 0 1.5rem; font-size:.63rem; font-weight:800; letter-spacing:.15em; line-height:1.5; }
.hero h1,.section-intro h2,.about-statement h2,.contact-inner h2 { margin:0; font-family:var(--serif); font-weight:400; letter-spacing:-.045em; line-height:.98; }
.hero h1 { font-size:clamp(4.2rem,8vw,8.2rem); max-width:8.5ch; }
.hero-headline-rotator { display:grid; position:relative; isolation:isolate; }
.hero-headline-slide { grid-area:1/1; display:block; align-self:start; opacity:0; visibility:hidden; pointer-events:none; will-change:transform,opacity,filter; }
.hero-headline-slide.is-active { opacity:1; visibility:visible; pointer-events:auto; }
.hero-headline-slide.is-entering { animation:hero-headline-enter .82s cubic-bezier(.16,.8,.22,1) both; }
.hero-headline-slide.is-leaving { visibility:visible; animation:hero-headline-leave .64s cubic-bezier(.4,0,.2,1) both; }
.hero-headline-slide.from-up { --headline-enter-x:0; --headline-enter-y:-.62em; --headline-exit-x:0; --headline-exit-y:.42em; }
.hero-headline-slide.from-down { --headline-enter-x:0; --headline-enter-y:.62em; --headline-exit-x:0; --headline-exit-y:-.42em; }
.hero-headline-slide.from-left { --headline-enter-x:-.72em; --headline-enter-y:0; --headline-exit-x:.48em; --headline-exit-y:0; }
.hero-headline-slide.from-right { --headline-enter-x:.72em; --headline-enter-y:0; --headline-exit-x:-.48em; --headline-exit-y:0; }
@keyframes hero-headline-enter { from{opacity:0;filter:blur(7px);transform:translate3d(var(--headline-enter-x,0),var(--headline-enter-y,.55em),0)} to{opacity:1;filter:blur(0);transform:translate3d(0,0,0)} }
@keyframes hero-headline-leave { from{opacity:1;filter:blur(0);transform:translate3d(0,0,0)} to{opacity:0;filter:blur(5px);transform:translate3d(var(--headline-exit-x,0),var(--headline-exit-y,-.42em),0)} }
.hero-headline-controls { display:flex; align-items:center; gap:.45rem; min-height:18px; margin-top:1rem; }
.hero-headline-control { width:32px; height:18px; padding:7px 0; border:0; background:transparent; cursor:pointer; transition:width .35s cubic-bezier(.2,.8,.2,1); }
.hero-headline-control::before { content:""; display:block; width:100%; height:3px; border-radius:999px; background:rgba(39,34,31,.25); transition:background .25s ease,box-shadow .25s ease; }
.hero-headline-control:hover::before,.hero-headline-control:focus-visible::before { background:rgba(255,90,0,.62); }
.hero-headline-control:focus-visible { outline:2px solid var(--orange); outline-offset:3px; border-radius:999px; }
.hero-headline-control.is-active { width:52px; }
.hero-headline-control.is-active::before { background:var(--orange); box-shadow:0 0 12px rgba(255,90,0,.38); }
h1 em,h2 em { color:var(--orange); font-style:italic; }
.hero-text { margin:2rem 0 0; max-width:620px; font-size:clamp(1.08rem,1.5vw,1.3rem); line-height:1.6; color:#5f5752; }
.hero-service-callout { margin:1.5rem 0 0; padding:.85rem 0 .85rem 1rem; border-left:3px solid var(--orange); font:italic clamp(1.15rem,1.7vw,1.45rem)/1.25 var(--serif); max-width:520px; }
.hero-service-callout span { color:var(--orange); font-family:var(--sans); font-style:normal; font-weight:900; margin-right:.45rem; }
.hero-actions { display:flex; align-items:center; flex-wrap:wrap; gap:1rem 1.2rem; margin-top:2.2rem; }
.primary-button { display:inline-flex; font-size:.78rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; padding:1.1rem 1.5rem; }
.website-button { background:var(--orange); color:var(--ink); box-shadow:0 8px 22px rgba(255,90,0,.2); }
.simple-link { padding-bottom:.25rem; border-bottom:1px solid var(--ink); font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.simple-link span { margin-left:.65rem; color:var(--orange); }
.starting-price { margin-top:2.5rem; padding-top:1.2rem; border-top:1px solid var(--line); max-width:620px; display:flex; flex-wrap:wrap; gap:.6rem 1.5rem; font-size:.77rem; color:#665f5a; }
.starting-price span { display:inline-flex; flex-direction:column; gap:.22rem; }
.starting-price strong { color:var(--ink); }

.hero-art { min-height:620px; border-radius:48% 48% 5rem 5rem; background:var(--orange-soft); position:relative; display:grid; place-items:center; overflow:hidden; }
.hero-brand-stamp { position:absolute; top:2rem; right:2rem; width:88px; height:88px; object-fit:cover; border-radius:22px; box-shadow:0 10px 26px rgba(39,34,31,.2); z-index:4; transform:rotate(4deg); }
.sun-shape { position:absolute; width:560px; height:560px; border-radius:50%; border:1px solid rgba(39,34,31,.2); }
.sun-shape::before,.sun-shape::after { content:""; position:absolute; border-radius:50%; border:1px solid rgba(39,34,31,.18); }
.sun-shape::before { inset:14%; }
.sun-shape::after { inset:29%; background:var(--orange); }
.spark { position:absolute; font:400 5rem var(--serif); z-index:3; }
.spark-one { left:8%; top:12%; }
.spark-two { right:8%; bottom:10%; }
.social-card { width:min(68%,360px); background:var(--white); border:1px solid var(--ink); padding:.65rem; transform:rotate(3deg); box-shadow:11px 12px 0 rgba(39,34,31,.85); position:relative; z-index:2; }
.social-top,.social-bottom { display:flex; justify-content:space-between; padding:.6rem .35rem; font-size:.55rem; letter-spacing:.08em; }
.social-image { min-height:330px; background:var(--ink); color:white; padding:1.4rem; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
.social-image::after { content:""; position:absolute; width:210px; height:210px; border:35px solid var(--orange); border-radius:50%; top:-70px; right:-80px; }
.small-copy { font-size:.55rem; letter-spacing:.16em; margin-bottom:.65rem; position:relative; z-index:2; }
.social-image>strong { font:400 3.65rem/.85 var(--serif); position:relative; z-index:2; }
.round-note { position:absolute; z-index:3; right:1rem; bottom:1rem; width:82px; height:82px; border-radius:50%; background:var(--orange); color:var(--ink); display:grid; place-items:center; text-align:center; font-size:.53rem; font-weight:900; transform:rotate(-8deg); }
.website-hero-badge { position:absolute; left:3%; bottom:7%; z-index:5; width:148px; height:148px; padding:1rem; border-radius:50%; background:var(--ink); color:white; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; box-shadow:0 14px 30px rgba(39,34,31,.25); transform:rotate(-7deg); transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s ease,color .3s ease,box-shadow .3s ease; }
.website-hero-badge::before { content:""; position:absolute; inset:7px; border:1px solid rgba(255,255,255,.35); border-radius:50%; }
.website-hero-badge span { font-size:.48rem; font-weight:900; letter-spacing:.13em; }
.website-hero-badge strong { margin:.25rem 0; font:italic 1.55rem/1 var(--serif); }
.website-hero-badge small { font-size:.48rem; font-weight:900; letter-spacing:.08em; }
.website-hero-badge:hover,.website-hero-badge:focus-visible { background:var(--orange); color:var(--ink); box-shadow:0 18px 38px rgba(255,90,0,.3); transform:rotate(0) scale(1.06); }
.website-hero-badge:hover::before,.website-hero-badge:focus-visible::before { border-color:rgba(39,34,31,.4); }
.mini-note { position:absolute; right:3%; bottom:8%; z-index:4; background:var(--white); border:1px solid var(--ink); padding:.9rem 1rem; font:italic 1rem/1.25 var(--serif); transform:rotate(-3deg); }

.trust-strip { min-height:130px; display:grid; grid-template-columns:1fr 3fr; align-items:center; gap:2rem; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.trust-strip p { margin:0; font-size:.68rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.trust-strip div { display:flex; flex-wrap:wrap; gap:1.4rem 2.3rem; justify-content:flex-end; }
.trust-strip span { color:#746a64; font-family:var(--serif); font-size:1.05rem; font-style:italic; }
.location-strip { display:grid; grid-template-columns:.85fr 1.15fr; gap:clamp(2rem,7vw,7rem); align-items:center; padding-top:clamp(3.5rem,6vw,5.5rem); padding-bottom:clamp(3.5rem,6vw,5.5rem); border-bottom:1px solid var(--line); }
.location-strip .eyebrow { color:var(--orange); }
.location-strip h2 { margin:0; max-width:11ch; font:400 clamp(2.4rem,4.2vw,4.5rem)/1 var(--serif); letter-spacing:-.04em; }
.location-strip>p { margin:0; max-width:680px; color:#625a55; font-size:1.02rem; line-height:1.7; }
.location-strip a { display:inline; color:var(--ink); font-weight:800; border-bottom:1px solid var(--orange); }
.location-strip a span { color:var(--orange); }
.section-intro { max-width:850px; margin:0 auto 4.5rem; text-align:center; }
.section-intro h2,.about-statement h2,.contact-inner h2 { font-size:clamp(3.3rem,6.5vw,6.4rem); }
.section-intro>p:last-child { max-width:600px; margin:1.5rem auto 0; color:#685f5a; line-height:1.6; }
.section-intro.compact { max-width:650px; margin-left:0; text-align:left; }
.section-intro.compact>p:last-child { margin-left:0; }

.service-grid { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.service-grid article { min-height:300px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); padding:clamp(1.6rem,3vw,3rem); background:rgba(255,255,255,.34); }
.service-grid article>span { display:block; color:var(--orange); font-size:.65rem; font-weight:800; }
.service-grid h3 { margin:3.3rem 0 1rem; font:400 clamp(2.4rem,4vw,4.2rem) var(--serif); }
.service-grid p { color:#675f59; line-height:1.6; margin:0; max-width:34ch; }

.about-section { background:var(--ink); color:white; display:grid; grid-template-columns:1.1fr .7fr; gap:clamp(4rem,10vw,12rem); align-items:end; }
.about-statement .eyebrow { color:var(--orange-soft); }
.about-badge { width:100px; height:100px; border-radius:50%; background:var(--orange); color:var(--ink); display:grid; place-items:center; text-align:center; font-size:.58rem; line-height:1.45; font-weight:900; letter-spacing:.08em; margin-bottom:3rem; transform:rotate(-7deg); }
.about-statement h2 { max-width:9.5ch; }
.about-copy { font-size:1.13rem; line-height:1.65; color:#d8d0c8; }
.about-points { margin-top:2rem; border-top:1px solid #555; display:flex; flex-direction:column; }
.about-points span { padding:.9rem 0; border-bottom:1px solid #555; color:white; font-size:.72rem; font-weight:800; text-transform:uppercase; letter-spacing:.09em; }
.about-logo { margin:2.2rem 0 0; padding-top:2rem; border-top:1px solid #555; display:flex; align-items:center; gap:1.2rem; }
.about-logo img { width:112px; height:112px; border-radius:22px; object-fit:cover; box-shadow:0 14px 32px rgba(0,0,0,.28); }
.about-logo figcaption { max-width:12ch; color:white; font:italic 1.15rem/1.25 var(--serif); }

.packages-section { background:var(--paper-deep); }
.packages-intro { margin-bottom:5rem; }
.package-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1rem; align-items:stretch; }
.package-card { background:var(--white); border:1px solid var(--line); border-radius:1.5rem; padding:clamp(1.6rem,3vw,2.6rem); display:flex; flex-direction:column; min-height:670px; position:relative; }
.package-card.featured { border:2px solid var(--orange); transform:translateY(-1rem); }
.popular-label { position:absolute; right:1.5rem; top:1.5rem; padding:.45rem .65rem; background:var(--orange); border-radius:999px; font-size:.52rem; font-weight:900; letter-spacing:.08em; }
.package-card h3 { margin:0 0 .8rem; font:400 clamp(2rem,3vw,3.15rem) var(--serif); max-width:8ch; }
.package-intro { color:#6b625d; line-height:1.5; min-height:74px; }
.price { margin:1.5rem 0; padding:1.3rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; align-items:end; gap:.6rem; }
.price strong { font:400 clamp(2.8rem,4vw,4rem) var(--serif); }
.price span { font-size:.72rem; color:#6d655f; padding-bottom:.5rem; }
.package-card ul { list-style:none; padding:0; margin:0 0 1.8rem; }
.package-card li { padding:.48rem 0; font-size:.86rem; color:#504945; }
.package-card li::before { content:"+"; color:var(--orange); font-weight:900; margin-right:.65rem; }
.package-note { font-size:.69rem; font-style:italic; color:#776d67; margin-top:auto; }
.package-card>a { margin-top:1.2rem; text-align:center; border:1px solid var(--ink); border-radius:999px; padding:1rem; font-size:.7rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.package-card>a:hover { background:var(--orange); border-color:var(--orange); }
.pricing-footnote { max-width:920px; margin:2rem auto 0; text-align:center; font-size:.67rem; line-height:1.55; color:#756c66; }

.websites-section { background:var(--white); display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.websites-intro { position:sticky; top:150px; }
.websites-intro h2 { margin:0; font:400 clamp(3.3rem,5.5vw,5.8rem)/.98 var(--serif); letter-spacing:-.045em; max-width:8.5ch; }
.websites-intro>p:not(.eyebrow) { max-width:500px; color:#685f5a; line-height:1.65; }
.website-care { margin-top:2rem; padding-top:1.2rem; border-top:1px solid var(--line); font-size:.82rem; }
.website-care strong { color:var(--orange); }
.website-detail-link { display:inline-block; margin-top:1rem; padding-bottom:.25rem; border-bottom:1px solid var(--orange); font-size:.7rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.website-detail-link span { color:var(--orange); }
.website-card-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.website-card { min-height:545px; padding:clamp(1.5rem,2.5vw,2.3rem); border:1px solid var(--line); border-radius:1.5rem; background:var(--paper); display:flex; flex-direction:column; position:relative; }
.website-card.featured { border:2px solid var(--orange); }
.website-card h3 { margin:1.1rem 0 .7rem; font:400 clamp(2rem,3vw,3rem) var(--serif); }
.website-card>p { min-height:72px; color:#685f5a; line-height:1.5; }
.website-price { padding:1.2rem 0; margin:1rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; }
.website-price strong { font:400 clamp(2.8rem,4vw,4rem) var(--serif); }
.website-price span { color:#776d67; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.website-card ul { list-style:none; padding:0; margin:0 0 1.5rem; }
.website-card li { padding:.45rem 0; color:#504945; font-size:.84rem; }
.website-card li::before { content:"+"; color:var(--orange); font-weight:900; margin-right:.6rem; }
.website-card>a,.website-bundle a { margin-top:auto; padding:.95rem 1rem; border:1px solid var(--ink); border-radius:999px; text-align:center; font-size:.68rem; font-weight:900; text-transform:uppercase; letter-spacing:.06em; }
.website-card>a:hover { background:var(--orange); border-color:var(--orange); }
.website-bundle { margin-top:1rem; padding:clamp(1.6rem,3vw,2.5rem); background:var(--ink); color:white; border-radius:1.5rem; display:grid; grid-template-columns:1.4fr .6fr; gap:2rem; align-items:end; }
.website-bundle .eyebrow { color:var(--orange-soft); }
.website-bundle h3 { margin:0; font:400 clamp(2.2rem,4vw,4rem)/1 var(--serif); }
.website-bundle p:not(.eyebrow) { color:#cfc7c1; line-height:1.55; max-width:560px; }
.bundle-action { display:flex; flex-direction:column; align-items:stretch; }
.bundle-action>strong { font:400 clamp(2.8rem,4vw,4rem) var(--serif); }
.bundle-action>span { margin:.25rem 0 1.2rem; color:#aaa19b; font-size:.65rem; text-transform:uppercase; letter-spacing:.08em; }
.website-bundle a { border-color:var(--orange); background:var(--orange); color:var(--ink); }
.website-footnote { margin:1.2rem 0 0; color:#776d67; font-size:.67rem; line-height:1.55; }

.addons,.process-section,.faq-section { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.addon-list,.process-list,.faq-list { border-top:1px solid var(--ink); }
.addon-list>div { min-height:84px; display:flex; justify-content:space-between; align-items:center; gap:2rem; border-bottom:1px solid var(--ink); }
.addon-list span { font-family:var(--serif); font-size:clamp(1.25rem,2vw,1.8rem); }
.addon-list strong { font-size:.73rem; text-transform:uppercase; letter-spacing:.07em; color:var(--orange); text-align:right; }
.process-section { background:var(--orange-soft); }
.process-list { list-style:none; margin:0; padding:0; }
.process-list li { display:grid; grid-template-columns:54px 1fr; gap:1rem; padding:1.7rem 0; border-bottom:1px solid var(--ink); }
.process-list li>span { width:36px; height:36px; border-radius:50%; background:var(--orange); display:grid; place-items:center; font-size:.7rem; font-weight:900; }
.process-list h3 { margin:0 0 .45rem; font:400 1.65rem var(--serif); }
.process-list p { margin:0; color:#625a55; line-height:1.5; font-size:.9rem; max-width:570px; }
.faq-list details { border-bottom:1px solid var(--ink); }
.faq-list summary { list-style:none; cursor:pointer; padding:1.4rem 0; display:flex; justify-content:space-between; gap:2rem; font-family:var(--serif); font-size:1.18rem; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary span { color:var(--orange); font-family:var(--sans); font-size:1.4rem; transition:transform .2s ease; }
.faq-list details[open] summary span { transform:rotate(45deg); }
.faq-list details p { margin:0; max-width:650px; padding:0 0 1.5rem; color:#625a55; line-height:1.6; }

.contact-section { background:var(--orange); }
.contact-inner { min-height:650px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; }
.contact-inner h2 { max-width:11ch; }
.contact-inner>p:not(.eyebrow) { max-width:560px; font-size:1.08rem; line-height:1.6; }
.contact-inner>a { margin:1.5rem 0; background:var(--ink); color:white; border-radius:999px; padding:1.15rem 1.7rem; font-size:.75rem; font-weight:900; text-transform:uppercase; letter-spacing:.07em; }
.contact-details { display:flex; flex-wrap:wrap; justify-content:center; gap:.7rem 1.3rem; font-size:.65rem; font-weight:800; letter-spacing:.06em; }
.contact-details a { border-bottom:1px solid rgba(39,34,31,.45); padding-bottom:.15rem; overflow-wrap:anywhere; }
.contact-details a:hover { border-color:var(--ink); }
.site-footer { background:var(--ink); color:white; padding-top:4rem; padding-bottom:max(2rem,env(safe-area-inset-bottom)); display:grid; grid-template-columns:1.2fr 1fr auto; gap:3rem; align-items:start; }
.footer-brand .brand-name strong { color:var(--orange); }
.site-footer p { margin:.4rem 0 0; color:#a89f99; font-size:.82rem; max-width:340px; }
.site-footer>.footer-links { display:flex; flex-wrap:wrap; gap:1rem 1.2rem; font-size:.68rem; text-transform:uppercase; letter-spacing:.08em; }
.site-footer>.footer-links a { padding-bottom:.2rem; border-bottom:1px solid transparent; }
.site-footer>.footer-links a:hover { color:var(--orange); border-color:var(--orange); }
.site-footer small { grid-column:1/-1; padding-top:2rem; border-top:1px solid #45413e; color:#8c8580; }

/* Progressive interaction layer */
.main-nav>a { position:relative; isolation:isolate; transition:color .25s ease,transform .25s ease,box-shadow .25s ease; }
.main-nav>a:not(.nav-button) { padding:.68rem .82rem; border-radius:999px; overflow:hidden; transform:translate(var(--magnet-x,0),var(--magnet-y,0)) scale(var(--magnet-scale,1)); transition:color .25s ease,transform .16s ease-out,box-shadow .25s ease; }
.main-nav>a:not(.nav-button)::before { content:""; position:absolute; inset:0; z-index:-1; border-radius:inherit; background:radial-gradient(circle at var(--nav-x,50%) var(--nav-y,50%),rgba(255,141,80,.42),rgba(255,90,0,.14) 42%,transparent 72%); opacity:0; transform:scale(.78); transition:opacity .28s ease,transform .35s cubic-bezier(.2,.8,.2,1); }
.main-nav>a:not(.nav-button)::after { content:""; position:absolute; left:.82rem; right:.82rem; bottom:.35rem; height:2px; border-radius:999px; background:var(--orange); transform:scaleX(0); transform-origin:right; transition:transform .35s cubic-bezier(.2,.8,.2,1); }
.main-nav>a:not(.nav-button):hover,.main-nav>a:not(.nav-button):focus-visible { color:var(--orange); }
.main-nav>a:not(.nav-button):hover::before,.main-nav>a:not(.nav-button):focus-visible::before,.main-nav>a:not(.nav-button)[aria-current="location"]::before { opacity:1; transform:scale(1); }
.main-nav>a:not(.nav-button):hover::after,.main-nav>a:not(.nav-button):focus-visible::after,.main-nav>a:not(.nav-button)[aria-current="location"]::after { transform:scaleX(1); transform-origin:left; }
.main-nav>a:not(.nav-button)[aria-current="location"] { color:var(--ink); box-shadow:inset 0 0 0 1px rgba(255,90,0,.22); }
.main-nav>a:not(.nav-button)[aria-current="page"] { color:var(--orange); box-shadow:inset 0 0 0 1px rgba(255,90,0,.22); }
.nav-button,.primary-button,.package-card>a,.website-card>a,.website-bundle a,.contact-inner>a { position:relative; overflow:hidden; isolation:isolate; transition:transform .2s ease,background .2s ease,color .2s ease,border-color .2s ease; }
.nav-button::after,.primary-button::after,.package-card>a::after,.website-card>a::after,.website-bundle a::after,.contact-inner>a::after { content:""; position:absolute; inset:-2px; z-index:-1; border-radius:inherit; background:radial-gradient(circle at var(--nav-x,50%) var(--nav-y,50%),#ff8d50 0,var(--orange) 34%,var(--ink) 72%); opacity:0; transition:opacity .3s ease; }
.nav-button:hover::after,.nav-button:focus-visible::after,.primary-button:hover::after,.primary-button:focus-visible::after,.package-card>a:hover::after,.package-card>a:focus-visible::after,.website-card>a:hover::after,.website-card>a:focus-visible::after,.website-bundle a:hover::after,.website-bundle a:focus-visible::after,.contact-inner>a:hover::after,.contact-inner>a:focus-visible::after { opacity:1; }
.package-card>a:hover,.package-card>a:focus-visible,.website-card>a:hover,.website-card>a:focus-visible,.website-bundle a:hover,.website-bundle a:focus-visible,.contact-inner>a:hover,.contact-inner>a:focus-visible { background:var(--orange); color:var(--ink); border-color:var(--orange); transform:translateY(-2px); }

.service-grid article,.package-card,.website-card,.website-bundle,.seo-card-grid article,.seo-package-row article { overflow:hidden; }
.service-grid article::before,.package-card::before,.website-card::before,.website-bundle::before,.seo-card-grid article::before,.seo-package-row article::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%),rgba(255,90,0,.16),transparent 68%); opacity:0; transition:opacity .3s ease; }
.service-grid article:hover::before,.package-card:hover::before,.website-card:hover::before,.website-bundle:hover::before,.seo-card-grid article:hover::before,.seo-package-row article:hover::before { opacity:1; }
.service-grid article { position:relative; }

.js.motion-enabled .reveal-item { opacity:.06; filter:blur(var(--reveal-blur,6px)); transform:var(--reveal-base,translateY(0)) translate3d(var(--reveal-x,0),var(--reveal-y,54px),0) scale(var(--reveal-scale,.975)); transition:opacity .75s ease,transform .85s cubic-bezier(.16,.8,.22,1),filter .75s ease; transition-delay:var(--reveal-delay,0ms); }
.js.motion-enabled .reveal-item.is-visible { opacity:1; filter:blur(0); transform:var(--reveal-base,translateY(0)) translate3d(0,0,0) scale(1); }
.package-card.featured.reveal-item { --reveal-base:translateY(-1rem); }
.scroll-motion-text { transform:translate3d(var(--text-shift-x,0),var(--text-shift-y,0),0) rotate(var(--text-tilt,0deg)) scale(var(--text-scale,1)); transition:transform .08s linear; will-change:transform; backface-visibility:hidden; }
h1.scroll-motion-text,h2.scroll-motion-text,h3.scroll-motion-text { text-shadow:var(--text-shadow-x,0) var(--text-shadow-y,0) 0 rgba(255,90,0,.18); transition:transform .08s linear,text-shadow .12s ease; }
.eyebrow.scroll-motion-text { letter-spacing:calc(.15em + var(--text-spacing,0em)); transition:transform .08s linear,letter-spacing .12s ease; }
.kinetic-word { display:inline-block; transform:translate3d(0,var(--word-shift-y,0),0) rotate(var(--word-rotate,0deg)); transition:transform .09s linear; will-change:transform; }
.kinetic-letter { display:inline-block; transform:translate3d(var(--letter-shift-x,0),var(--letter-shift-y,0),0) rotate(var(--letter-rotate,0deg)); transition:transform .08s linear,color .15s ease; will-change:transform; }
[data-motion-style="letters"].scroll-motion-text { text-shadow:none; }
[data-motion-style="quiet"].scroll-motion-text { text-shadow:none; }

.cursor-dot,.cursor-halo { position:fixed; left:0; top:0; pointer-events:none; z-index:1000; opacity:0; will-change:transform; transform:translate3d(var(--cursor-x,-100px),var(--cursor-y,-100px),0) translate(-50%,-50%); }
.cursor-dot { width:8px; height:8px; border-radius:50%; background:var(--orange); box-shadow:0 0 14px rgba(255,90,0,.85); transition:width .2s ease,height .2s ease,background .2s ease,opacity .2s ease; }
.cursor-halo { width:36px; height:36px; border:1px solid rgba(255,90,0,.7); border-radius:50%; background:rgba(255,90,0,.06); box-shadow:0 0 22px rgba(255,90,0,.16); transition:width .25s ease,height .25s ease,background .25s ease,border-color .25s ease,opacity .2s ease; }
.cursor-ready .cursor-dot,.cursor-ready .cursor-halo { opacity:1; }
.cursor-ready.cursor-over .cursor-dot { width:5px; height:5px; background:var(--ink); }
.cursor-ready.cursor-over .cursor-halo { width:58px; height:58px; background:rgba(255,90,0,.16); border-color:var(--orange); }
.cursor-ready.cursor-down .cursor-halo { width:28px; height:28px; background:rgba(255,90,0,.24); }
.cursor-ready.cursor-on-light .cursor-dot { box-shadow:0 0 6px rgba(255,90,0,.95),0 0 20px rgba(255,90,0,.9),0 0 34px rgba(255,90,0,.38); }
.cursor-ready.cursor-on-light .cursor-halo { border-color:rgba(255,90,0,.9); background:rgba(255,90,0,.09); box-shadow:inset 0 0 0 1px rgba(255,255,255,.75),0 0 18px rgba(255,90,0,.38),0 0 34px rgba(255,90,0,.22); }
.cursor-ready.cursor-on-orange .cursor-dot { background:var(--ink); box-shadow:0 0 0 2px rgba(255,255,255,.8),0 0 14px rgba(39,34,31,.48); }
.cursor-ready.cursor-on-orange .cursor-halo { border:2px solid var(--ink); background:rgba(255,255,255,.2); box-shadow:0 0 0 2px rgba(255,255,255,.56),0 0 24px rgba(39,34,31,.32); }
.cursor-ready.cursor-on-orange.cursor-over .cursor-dot { background:var(--ink); }
.cursor-ready.cursor-on-orange.cursor-over .cursor-halo { background:rgba(255,255,255,.28); border-color:var(--ink); }
.light-trail { position:fixed; left:0; top:0; width:var(--trail-size,38px); height:var(--trail-size,38px); pointer-events:none; z-index:998; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.5) 0,rgba(255,90,0,.24) 28%,rgba(255,90,0,.08) 52%,transparent 72%); box-shadow:0 0 24px rgba(255,90,0,.12); transform:translate(-50%,-50%) scale(.35); animation:light-trail-fade .46s ease-out forwards; }
@keyframes light-trail-fade { 0%{opacity:.72;transform:translate(-50%,-50%) scale(.35)} 55%{opacity:.3} 100%{opacity:0;transform:translate(-50%,-50%) scale(1.45)} }

@media (hover:hover) and (pointer:fine) {
  .cursor-ready,.cursor-ready a,.cursor-ready button,.cursor-ready summary { cursor:none; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; }
  .cursor-dot,.cursor-halo,.light-trail { display:none!important; }
  .js .reveal-item { opacity:1!important; transform:none!important; filter:none!important; }
  .scroll-motion-text,.kinetic-word,.kinetic-letter { transform:none!important; transition:none!important; text-shadow:none!important; }
  .eyebrow.scroll-motion-text { letter-spacing:.15em!important; }
}

/* Search-focused service pages */
.seo-page-body { background:var(--paper); }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:.55rem; padding-top:2rem; color:#746a64; font-size:.68rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.breadcrumbs a { color:var(--ink); border-bottom:1px solid var(--orange); }
.seo-page-hero { padding-top:0; padding-bottom:clamp(5rem,8vw,8rem); }
.seo-hero-layout { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(330px,.75fr); gap:clamp(3rem,8vw,8rem); align-items:end; padding-top:clamp(4rem,7vw,7rem); }
.seo-page-hero h1 { margin:0; max-width:12ch; font:400 clamp(4rem,7.2vw,7.3rem)/.96 var(--serif); letter-spacing:-.05em; }
.seo-hero-lede { max-width:760px; margin:2rem 0 0; color:#5f5752; font-size:clamp(1.08rem,1.5vw,1.3rem); line-height:1.7; }
.seo-hero-panel { position:relative; padding:clamp(1.6rem,3vw,2.5rem); border-radius:1.5rem; background:var(--ink); color:white; box-shadow:14px 16px 0 var(--orange-soft); }
.seo-hero-panel .eyebrow { color:var(--orange-soft); }
.seo-hero-panel ul { list-style:none; margin:0; padding:0; }
.seo-hero-panel li { padding:.9rem 0; border-bottom:1px solid #55504c; font-size:.87rem; line-height:1.45; }
.seo-hero-panel li::before { content:"+"; margin-right:.7rem; color:var(--orange); font-weight:900; }
.seo-panel-note { margin:1.4rem 0 0; color:#cfc7c1; font:italic 1rem/1.5 var(--serif); }
.seo-snapshot { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.seo-snapshot>div { min-height:150px; padding:1.5rem; border-right:1px solid var(--line); border-bottom:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; background:rgba(255,255,255,.28); }
.seo-snapshot strong { font:400 clamp(2rem,3.2vw,3.4rem)/1 var(--serif); }
.seo-snapshot span { margin-top:.65rem; color:#6c635d; font-size:.68rem; font-weight:800; line-height:1.4; letter-spacing:.07em; text-transform:uppercase; }
.seo-content-section { background:var(--white); }
.seo-section-heading { max-width:850px; margin-bottom:4rem; }
.seo-section-heading h2 { margin:0; font:400 clamp(3.2rem,5.8vw,5.8rem)/.98 var(--serif); letter-spacing:-.045em; }
.seo-section-heading>p:last-child { max-width:620px; color:#685f5a; line-height:1.65; }
.seo-section-heading.centered { margin-left:auto; margin-right:auto; text-align:center; }
.seo-section-heading.centered>p:last-child { margin-left:auto; margin-right:auto; }
.seo-card-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line); border-left:1px solid var(--line); }
.seo-card-grid article { position:relative; min-height:300px; padding:clamp(1.6rem,3vw,2.8rem); border-right:1px solid var(--line); border-bottom:1px solid var(--line); background:var(--paper); }
.seo-card-grid article>span { color:var(--orange); font-size:.65rem; font-weight:900; }
.seo-card-grid h3 { margin:3rem 0 1rem; font:400 clamp(2rem,3vw,3.2rem)/1 var(--serif); }
.seo-card-grid p { margin:0; max-width:36ch; color:#675f59; line-height:1.65; }
.seo-split-section { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(3rem,9vw,10rem); align-items:start; }
.seo-split-section h2 { margin:0; max-width:10ch; font:400 clamp(3rem,5.4vw,5.5rem)/.98 var(--serif); letter-spacing:-.045em; }
.seo-rich-copy { max-width:760px; color:#625a55; font-size:1.05rem; line-height:1.75; }
.seo-rich-copy>p:first-child { margin-top:0; }
.seo-rich-copy h3 { margin:0 0 .7rem; color:var(--ink); font:400 2rem/1.05 var(--serif); }
.seo-rich-copy h3:not(:first-child) { margin-top:2.3rem; }
.seo-check-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.2rem 1.5rem; list-style:none; margin:2rem 0 0; padding:1.2rem 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.seo-check-list li { padding:.6rem 0; color:var(--ink); font-size:.75rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.seo-check-list li::before { content:"+"; margin-right:.55rem; color:var(--orange); }
.seo-inline-link a { color:var(--ink); font-size:.75rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; border-bottom:1px solid var(--orange); }
.seo-inline-link span { color:var(--orange); }
.seo-packages-section { background:var(--paper-deep); }
.seo-package-row { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.seo-package-row article { position:relative; min-height:390px; padding:clamp(1.5rem,2.8vw,2.4rem); border:1px solid var(--line); border-radius:1.4rem; background:var(--white); display:flex; flex-direction:column; }
.seo-package-row article.featured { border:2px solid var(--orange); }
.seo-package-row article>.eyebrow { color:var(--orange); }
.seo-package-row strong { display:flex; flex-direction:column; margin:1rem 0; font:400 clamp(2.8rem,4vw,4rem)/1 var(--serif); }
.seo-package-row strong span { margin-top:.45rem; color:#746a64; font:.65rem var(--sans); letter-spacing:.08em; text-transform:uppercase; }
.seo-package-row article>p:not(.eyebrow) { color:#625a55; line-height:1.6; }
.seo-package-row a { margin-top:auto; padding-top:1rem; border-top:1px solid var(--line); font-size:.7rem; font-weight:900; letter-spacing:.06em; text-transform:uppercase; }
.seo-package-row a::after { content:" →"; color:var(--orange); }
.seo-faq-section { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(3rem,8vw,8rem); align-items:start; }
.seo-faq-section .seo-section-heading { margin-bottom:0; }
.seo-faq-section .seo-section-heading h2 { font-size:clamp(3rem,5vw,5rem); }
.seo-foundation-section { background:var(--white); }

/* Responsive system */
@media (max-width:1200px) {
  .hero { gap:clamp(3rem,5vw,5rem); }
  .hero h1 { font-size:clamp(4.2rem,7.4vw,6.7rem); }
  .package-card { padding:clamp(1.55rem,2.4vw,2.2rem); }
  .popular-label { right:1.15rem; top:1.15rem; }
}

@media (max-width:1050px) {
  .hero { min-height:auto; grid-template-columns:1fr; }
  .hero-copy { max-width:820px; padding-top:1rem; }
  .hero h1 { max-width:9ch; font-size:clamp(4.8rem,10.5vw,7.2rem); }
  .hero-art { width:100%; min-height:600px; }
  .package-grid { grid-template-columns:1fr; max-width:720px; margin:0 auto; }
  .package-card { min-height:auto; }
  .package-card.featured,.package-card.featured.reveal-item { transform:none; --reveal-base:translateY(0); }
  .package-intro { min-height:auto; }
  .websites-section { grid-template-columns:1fr; }
  .websites-intro { position:static; max-width:760px; }
  .websites-intro h2 { max-width:10ch; }
  .website-card { min-height:500px; }
  .seo-page-hero h1 { font-size:clamp(4.3rem,8.5vw,6.4rem); }
  .seo-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:900px) {
  :root { --page-gutter:clamp(1.25rem,4vw,2.5rem); }
  body.menu-open { overflow:hidden; }
  [id] { scroll-margin-top:84px; }
  .site-header { min-height:72px; }
  .menu-button { display:block; position:relative; z-index:32; width:44px; height:44px; padding:.45rem; }
  .menu-button span { margin:5px auto; transition:transform .25s ease,opacity .2s ease; }
  .menu-button[aria-expanded="true"] span:first-child { transform:translateY(3px) rotate(45deg); }
  .menu-button[aria-expanded="true"] span:last-child { transform:translateY(-3px) rotate(-45deg); }
  .main-nav { display:flex; position:absolute; left:0; right:0; top:100%; max-height:calc(100dvh - 72px); z-index:31; padding:1.25rem var(--page-gutter) max(2rem,env(safe-area-inset-bottom)); overflow-y:auto; overscroll-behavior:contain; background:rgba(244,244,241,.985); box-shadow:0 18px 40px rgba(39,34,31,.14); flex-direction:column; align-items:stretch; gap:0; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(-12px); transition:opacity .22s ease,transform .28s cubic-bezier(.2,.8,.2,1),visibility .22s; }
  .main-nav.open { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
  .main-nav>a,.main-nav>a:not(.nav-button) { min-height:58px; display:flex; align-items:center; padding:1rem .75rem; border-bottom:1px solid var(--line); border-radius:.75rem; font-family:var(--serif); font-size:clamp(1.5rem,4.5vw,2rem); text-transform:none; transform:none; }
  .main-nav>a:not(.nav-button)::after { left:.75rem; right:.75rem; bottom:.55rem; }
  .main-nav .nav-button { min-height:52px; justify-content:center; margin-top:1rem; padding:1rem; border-bottom:0; font-family:var(--sans); font-size:.75rem; text-transform:uppercase; }
  .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .service-grid article:last-child { grid-column:1/-1; }
  .about-section,.addons,.process-section,.faq-section { grid-template-columns:1fr; }
  .location-strip { grid-template-columns:1fr; }
  .about-statement h2 { max-width:12ch; }
  .about-copy { max-width:720px; }
  .section-intro.compact { margin-bottom:2.5rem; }
  .seo-hero-layout,.seo-split-section,.seo-faq-section { grid-template-columns:1fr; }
  .seo-hero-layout { gap:3.5rem; }
  .seo-hero-panel { max-width:720px; }
  .seo-snapshot { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .seo-package-row { grid-template-columns:1fr; max-width:720px; margin:0 auto; }
  .seo-package-row article { min-height:auto; }
  .seo-section-heading { margin-bottom:3rem; }
  .seo-faq-section .seo-section-heading { margin-bottom:1rem; }
  .site-footer { gap:2rem; }
}

@media (max-width:760px) {
  .section-space { padding-top:clamp(4.5rem,16vw,6rem); padding-bottom:clamp(4.5rem,16vw,6rem); }
  .announcement { font-size:.57rem; letter-spacing:.11em; line-height:1.35; }
  .hero { gap:3.25rem; padding-top:3.5rem; padding-bottom:4.5rem; }
  .hero-copy { padding-top:0; }
  .hero h1 { max-width:8.5ch; font-size:clamp(3.7rem,16.5vw,5.8rem); }
  .hero-text { margin-top:1.5rem; font-size:1.02rem; }
  .hero-service-callout { font-size:1.12rem; }
  .hero-actions { display:grid; width:100%; grid-template-columns:1fr; align-items:stretch; }
  .hero-actions .primary-button { width:100%; min-height:52px; justify-content:center; }
  .simple-link { width:max-content; max-width:100%; margin-top:.25rem; }
  .starting-price { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:1rem; }
  .hero-art { min-height:0; height:clamp(470px,130vw,570px); border-radius:45% 45% 3rem 3rem; }
  .sun-shape { width:min(150vw,540px); height:min(150vw,540px); }
  .social-card { width:min(72%,330px); }
  .social-image { min-height:270px; }
  .social-image>strong { font-size:clamp(2.65rem,11vw,3.3rem); }
  .website-hero-badge { width:126px; height:126px; left:1rem; bottom:1.25rem; }
  .trust-strip { min-height:0; grid-template-columns:1fr; padding-top:2rem; padding-bottom:2rem; }
  .trust-strip div { justify-content:flex-start; gap:1rem 1.5rem; }
  .section-intro { margin:0 0 3.25rem; text-align:left; }
  .section-intro>p:last-child { margin-left:0; }
  .section-intro h2,.about-statement h2,.contact-inner h2 { font-size:clamp(3.15rem,13vw,5rem); }
  .service-grid article { min-height:235px; }
  .website-card-grid,.website-bundle { grid-template-columns:1fr; }
  .website-card { min-height:auto; }
  .website-card>p { min-height:auto; }
  .contact-inner { min-height:560px; padding-top:5rem; padding-bottom:5rem; }
  .site-footer { grid-template-columns:1fr; }
  .site-footer>.footer-links { flex-wrap:wrap; }
  .site-footer small { grid-column:1; }
  .breadcrumbs { padding-top:1.5rem; }
  .seo-page-hero { padding-bottom:4.5rem; }
  .seo-hero-layout { padding-top:3.5rem; }
  .seo-page-hero h1 { font-size:clamp(3.5rem,12.5vw,5.5rem); }
  .seo-hero-lede { font-size:1.02rem; }
  .seo-section-heading.centered { text-align:left; }
  .seo-section-heading.centered>p:last-child { margin-left:0; }
  .seo-split-section h2 { max-width:12ch; }
}

@media (max-width:600px) {
  .service-grid { grid-template-columns:1fr; }
  .service-grid article:last-child { grid-column:auto; }
  .service-grid article { min-height:215px; }
  .website-card-grid { grid-template-columns:1fr; }
  .about-logo { align-items:flex-start; }
  .about-logo img { width:96px; height:96px; }
  .process-list li { grid-template-columns:44px 1fr; gap:.75rem; }
  .faq-list summary { gap:1rem; font-size:1.1rem; }
  .seo-card-grid { grid-template-columns:1fr; }
  .seo-card-grid article { min-height:245px; }
  .seo-check-list { grid-template-columns:1fr; }
}

@media (max-width:480px) {
  :root { --page-gutter:1.1rem; }
  .announcement { padding:.5rem .8rem; font-size:.53rem; letter-spacing:.09em; }
  .brand-name { font-size:1.25rem; }
  .brand-mark { width:38px; height:38px; border-radius:11px; }
  .hero { padding-top:3rem; gap:2.75rem; }
  .hero h1 { font-size:clamp(3.3rem,16.8vw,4.8rem); }
  .eyebrow { margin-bottom:1.1rem; font-size:.58rem; letter-spacing:.13em; }
  .starting-price { grid-template-columns:1fr; }
  .hero-art { height:clamp(420px,128vw,500px); border-radius:42% 42% 2.3rem 2.3rem; }
  .hero-brand-stamp { width:64px; height:64px; border-radius:17px; top:1rem; right:1rem; }
  .social-card { width:min(76%,280px); padding:.5rem; box-shadow:8px 9px 0 rgba(39,34,31,.85); }
  .social-image { min-height:230px; padding:1rem; }
  .social-image>strong { font-size:clamp(2.2rem,11vw,2.8rem); }
  .round-note { width:70px; height:70px; font-size:.47rem; }
  .mini-note { display:none; }
  .website-hero-badge { width:106px; height:106px; padding:.65rem; left:.7rem; bottom:.8rem; }
  .website-hero-badge strong { font-size:1.18rem; }
  .website-hero-badge span,.website-hero-badge small { font-size:.4rem; }
  .section-intro h2,.about-statement h2,.contact-inner h2 { font-size:clamp(2.85rem,14vw,4.3rem); }
  .about-badge { width:86px; height:86px; margin-bottom:2rem; }
  .package-card,.website-card,.website-bundle { border-radius:1.15rem; padding:1.35rem; }
  .popular-label { position:static; align-self:flex-start; width:max-content; max-width:100%; margin-bottom:1rem; }
  .package-card h3,.website-card h3 { margin-top:0; }
  .price strong,.website-price strong,.bundle-action>strong { font-size:clamp(2.65rem,13vw,3.5rem); }
  .addon-list>div { align-items:flex-start; flex-direction:column; gap:.45rem; padding:1.15rem 0; }
  .addon-list strong { text-align:left; }
  .contact-inner>a { width:100%; min-height:52px; display:flex; align-items:center; justify-content:center; }
  .contact-details { flex-direction:column; align-items:center; }
  .site-footer>.footer-links { flex-direction:column; align-items:flex-start; }
  .seo-page-hero h1 { font-size:clamp(3.05rem,14vw,4.2rem); }
  .seo-hero-panel { padding:1.35rem; border-radius:1.15rem; box-shadow:8px 9px 0 var(--orange-soft); }
  .seo-snapshot { grid-template-columns:1fr; }
  .seo-snapshot>div { min-height:118px; }
  .seo-section-heading h2,.seo-split-section h2,.seo-faq-section .seo-section-heading h2 { font-size:clamp(2.75rem,13vw,4rem); }
  .seo-card-grid article { padding:1.35rem; }
  .seo-package-row article { border-radius:1.15rem; padding:1.35rem; }
  .seo-card-grid h3 { margin-top:2.25rem; }
}

@media (max-width:360px) {
  :root { --page-gutter:1rem; }
  .brand-name { font-size:1.15rem; }
  .hero h1 { font-size:clamp(3rem,16.5vw,3.7rem); }
  .hero-art { height:400px; }
  .social-card { width:78%; }
  .social-image { min-height:215px; }
  .hero-brand-stamp { width:56px; height:56px; }
  .website-hero-badge { width:96px; height:96px; }
  .website-hero-badge strong { font-size:1.05rem; }
  .package-card,.website-card,.website-bundle { padding:1.15rem; }
}

@media (max-width:900px) and (max-height:600px) {
  .main-nav { padding-top:.65rem; }
  .main-nav>a,.main-nav>a:not(.nav-button) { min-height:48px; padding:.7rem .75rem; font-size:1.35rem; }
  .main-nav .nav-button { min-height:46px; margin-top:.65rem; }
}

@media (hover:none) {
  .service-grid article::before,.package-card::before,.website-card::before,.website-bundle::before,.seo-card-grid article::before,.seo-package-row article::before { display:none; }
}
